Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

pashast

Users
  • Posts

    1,569
  • Joined

  • Last visited

Everything posted by pashast

  1. нужно смотреть лог ошибок и вкмод лог
  2. А косяк после заливки файла через кнопку "изображение" в редакторе поправлен?
  3. Назад в поисковик вернет, там в коде onclick="window.history.back();" По хорошему, нужно бы определять реферер, и если пришли с другого сайта, то кнопку не показывать. Типа так <?php if (isset($_SERVER['HTTP_REFERER'])) { $url = $_SERVER['HTTP_REFERER']; $url_arr = parse_url($url); if (strtolower($_SERVER[SERVER_NAME]) == strtolower($url['host'])) { код кнопки } } ?>
  4. Желание клиента закон. :-D Это еще не самое дурацкое требование, поверьте. По поводу нужности, я с заказчиками обычно не спорю а просто делаю так: выпилить фичу -- $50. запилить ее через некоторее время обратно -- $100.
  5. Не всем нравится адаптивный дизайн в новом опенкарте. Уже было несколько просьб от клиентов его выпылить. Но сделать это не так просто, как кажется. Попытался сделать это, изменив исходники бутстрапа и вот что вышло. PS. Кому лень читать дальше код, могут сразу скачать скомпилированый код в конце поста. PPS Это мой первый опыт работы с LESS файлами, так что, если что не так, прошу понять и простить :-D Итак, берем исходники бутстрапа на http://getbootstrap.com/getting-started/#download, там же курим мануал, как поднять node.js, npm и grunt. Разворачиваем все это добро у себя. В исходниках видим такие файлы Сразу попытался выпилить все правила, которые генерят @media (max-width: xxx) и @media (mix-width: xxx) во всех этих файлах. Понял что это будет долго и ошибки потом будет сложно найти. Поэтому сделал так: Берем файл variables.less и меняем все значения разрешений экранов на нули, кроме самого большого (1200px) // Extra small screen / phone //** Deprecated `@screen-xs` as of v3.0.1 @screen-xs: 480px; //** Deprecated `@screen-xs-min` as of v3.2.0 @screen-xs-min: @screen-xs; //** Deprecated `@screen-phone` as of v3.0.1 @screen-phone: @screen-xs-min; // Small screen / tablet //** Deprecated `@screen-sm` as of v3.0.1 @screen-sm: 768px; @screen-sm-min: @screen-sm; //** Deprecated `@screen-tablet` as of v3.0.1 @screen-tablet: @screen-sm-min; // Medium screen / desktop //** Deprecated `@screen-md` as of v3.0.1 @screen-md: 992px; @screen-md-min: @screen-md; //** Deprecated `@screen-desktop` as of v3.0.1 @screen-desktop: @screen-md-min; // Large screen / wide desktop //** Deprecated `@screen-lg` as of v3.0.1 @screen-lg: 1200px; @screen-lg-min: @screen-lg; //** Deprecated `@screen-lg-desktop` as of v3.0.1 @screen-lg-desktop: @screen-lg-min; // So media queries don't overlap when required, provide a maximum @screen-xs-max: (@screen-sm-min - 1); @screen-sm-max: (@screen-md-min - 1); @screen-md-max: (@screen-lg-min - 1); //== Grid system // //## Define your custom responsive grid. //** Number of columns in the grid. @grid-columns: 12; //** Padding between columns. Gets divided in half for the left and right. @grid-gutter-width: 30px; // Navbar collapse //** Point at which the navbar becomes uncollapsed. @grid-float-breakpoint: @screen-sm-min; //** Point at which the navbar begins collapsing. @grid-float-breakpoint-max: (@grid-float-breakpoint - 1); на // Extra small screen / phone //** Deprecated `@screen-xs` as of v3.0.1 @screen-xs: 0; //** Deprecated `@screen-xs-min` as of v3.2.0 @screen-xs-min: @screen-xs; //** Deprecated `@screen-phone` as of v3.0.1 @screen-phone: @screen-xs-min; // Small screen / tablet //** Deprecated `@screen-sm` as of v3.0.1 @screen-sm: 0; @screen-sm-min: @screen-sm; //** Deprecated `@screen-tablet` as of v3.0.1 @screen-tablet: @screen-sm-min; // Medium screen / desktop //** Deprecated `@screen-md` as of v3.0.1 @screen-md: 0; @screen-md-min: @screen-md; //** Deprecated `@screen-desktop` as of v3.0.1 @screen-desktop: @screen-md-min; // Large screen / wide desktop //** Deprecated `@screen-lg` as of v3.0.1 @screen-lg: 1200px; @screen-lg-min: @screen-lg; //** Deprecated `@screen-lg-desktop` as of v3.0.1 @screen-lg-desktop: @screen-lg-min; // So media queries don't overlap when required, provide a maximum @screen-xs-max: 0; @screen-sm-max: 0; @screen-md-max: 0; //== Grid system // //## Define your custom responsive grid. //** Number of columns in the grid. @grid-columns: 12; //** Padding between columns. Gets divided in half for the left and right. @grid-gutter-width: 30px; // Navbar collapse //** Point at which the navbar becomes uncollapsed. @grid-float-breakpoint: 0; //** Point at which the navbar begins collapsing. @grid-float-breakpoint-max: 0; Дальее берем grid.less и пытаемся сделать так чтобы правила col-xs col-sm итд работали одинаково на любых разрешениях. Ниже всесь перписаный файл. // // Grid system // -------------------------------------------------- // Container widths // // Set the container width, and override it for fixed navbars in media queries. .container { .container-fixed(); width: @container-lg; } // Fluid container // // Utilizes the mixin meant for fixed width containers, but without any defined // width for fluid, full width layouts. .container-fluid { .container-fixed(); } // Row // // Rows contain and clear the floats of your columns. .row { .make-row(); } // Columns // // Common styles for small and large grid columns .make-grid-columns(); // Extra small grid // // Columns, offsets, pushes, and pulls for extra small devices like // smartphones. .make-grid(xs); .make-grid(sm); .make-grid(md); .make-grid(lg); // Small grid // // Columns, offsets, pushes, and pulls for the small device range, from phones // to tablets. //@media (min-width: @screen-sm-min) { // .make-grid(sm); //} // Medium grid // // Columns, offsets, pushes, and pulls for the desktop device range. //@media (min-width: @screen-md-min) { // .make-grid(md); //} // Large grid // // Columns, offsets, pushes, and pulls for the large desktop device range. //@media (min-width: @screen-lg-min) { // .make-grid(lg); //} И закоментим ненужное в bootstrap.less. /*! * Bootstrap v3.3.4 (http://getbootstrap.com) * Copyright 2011-2015 Twitter, Inc. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) */ // Core variables and mixins @import "variables.less"; @import "mixins.less"; // Reset and dependencies @import "normalize.less"; @import "print.less"; @import "glyphicons.less"; // Core CSS @import "scaffolding.less"; @import "type.less"; @import "code.less"; @import "grid.less"; @import "tables.less"; @import "forms.less"; @import "buttons.less"; // Components @import "component-animations.less"; @import "dropdowns.less"; @import "button-groups.less"; @import "input-groups.less"; @import "navs.less"; @import "navbar.less"; @import "breadcrumbs.less"; @import "pagination.less"; @import "pager.less"; @import "labels.less"; @import "badges.less"; @import "jumbotron.less"; @import "thumbnails.less"; @import "alerts.less"; @import "progress-bars.less"; @import "media.less"; @import "list-group.less"; @import "panels.less"; @import "responsive-embed.less"; @import "wells.less"; @import "close.less"; // Components w/ JavaScript @import "modals.less"; @import "tooltip.less"; @import "popovers.less"; @import "carousel.less"; // Utility classes @import "utilities.less"; //@import "responsive-utilities.less"; Компилируем. Наш новый бутстрап появился в папке dist Все готово, ну почти )) Для дефолтного шаблона ок 2.0 нужно еще подправить стили в stylesheet.css. Теоретически, то же самое можно сделать для любых других шаблонов под бутстрап, если в них правила @media свалены все в один файл. Уберем ширину в 100% и пропишем минимальную ширину для body body { font-family: 'Open Sans', sans-serif; font-weight: 400; color: #666; font-size: 12px; line-height: 20px; min-width: 1170px; } теперь берем все правила @media (max-width: xxx) и @media (mix-width: xxx) и ставим там нули всесто значений, должно получится так @media (max-width: 0) и @media (mix-width: 0) Далее закоментим респонсив тег в header.tpl <?php /* <meta name="viewport" content="width=device-width, initial-scale=1"> */ ?> Все, теперь все. Глянуть можно здесь http://cart20.turbocart.pp.ua/ non-responsive bootstrap.zip
  6. Этим пройдитесь http://revisium.com/ai/ , обычно все находит.
  7. Модуль "следующий - предыдущий товар" ставили? Была такая версия, что скрывала этот блок.
  8. Добавить перед <meta name="description" content="" /> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" />
  9. Я надеюсь вы знаете, что в опенкарте можно менять размеры изображений по-умолчанию http://take.ms/QxFe6 Под одежду лучше вертикальные 270*360 например
  10. Есть, http://stackoverflow.com/questions/7081860/remove-the-image-resize-ratio-in-opencart можно обрезать фото, но тогда может обрезать важную часть а можно сохранять пропорции, но тогда нужно будет переверстать шаблон, например, под masonry http://masonry.desandro.com/ В этом случае вам, скорее всего понадобится помощь програмиста. Можно также поставить навороченый менеджер изображений, например такой ссылка но фотошоп удобнее
  11. http://www.adobe.com/ua/products/photoshop.html
  12. Пожалуйста. Лучшей бы благодарностью было, если бы обновили версию mega, чтобы она корректно отрабатывала хеши при нажатии кнопки назад/вперед в браузере. :-) Вот еще одна полезная штука Как выстроить параметры в 2 или 3 колонки берем ширину таблицы и если она меньше определенного значения, то присвоим ей определенный класс $('.option_box').each(function(index, element) { var l = $(element).find('.collapsible table').width(); if (l < 90) { $(this).addClass('one_second'); } if (l < 60) { $(this).removeClass('one_second').addClass('one_third'); } }); Дальше дело за css .one_second table, .one_third table { width: 100%; } .one_second table tbody tr, .one_third table tbody tr { display: inline-block; float: left; box-sizing: border-box; padding-right: 5px; } .one_second table tbody tr { width: 49.99%; } .one_third table tbody tr { width: 33.32%; } Величину 90 и 60 в js подгоняете под ваш дизайн
  13. вот хороший и бесплатный модуль https://opencartforum.com/files/file/743-%D0%BE%D0%B1%D0%BD%D0%BE%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5-%D1%86%D0%B5%D0%BD%D1%8B-%D0%BF%D1%80%D0%B8-%D0%B2%D1%8B%D0%B1%D0%BE%D1%80%D0%B5-%D0%BE%D0%BF%D1%86%D0%B8%D0%B8-%D0%B1%D0%B5%D0%B7-ajax-vqmod/
  14. Помогите написать запрос чтобы выборка была по возрастанию, но значения с нулями были в конце. Это реально сделать MYSQL запросом ? Нужно сделать сортировку по акциям, те которые заканчиваются раньше идут первыми, но те акции, которые без срока должны быть в конце.
  15. Мирохост, им кто-то пользуется? Там же цены ппц. Попробуйте хостпро или юкрейн, там есть тарифы с php_memory_limit 256MB за вменяемую цену Кешер не спасет, если хостер решил развести на бабло :-)
  16. на какой версии? на mega не работает, на вашей демке тоже
  17. Я добавлял такой костыль после function afterload(){ в файле шаблона добавил перезагругрузку страницы на нажатие вперед или назад в браузере window.onpopstate = function(event) { location.reload(); }; Страница обновляется и фильтр применяет значения из адресной строки Может автор подскажет более элегантное решение? :-)
  18. Это вкмод из модуля экспорт-импорт-export-import-xls-для-ocstore-1541 смотрите file name и там где позиция after, после нее добаавляете строки, те что в add <file name="admin/controller/common/header.php"> <operation> <search position="after"><![CDATA[$this->data['text_backup'] = $this->language->get('text_backup');]]></search> <add><![CDATA[ $this->data['text_export'] = $this->language->get('text_export');]]></add> </operation> <operation> <search position="after"><![CDATA[$this->data['backup'] = $this->url->link('tool/backup', 'token=' . $this->session->data['token'], 'SSL');]]></search> <add><![CDATA[ $this->data['export'] = $this->url->link('tool/export', 'token=' . $this->session->data['token'], 'SSL');]]></add> </operation> </file> <file name="admin/language/english/common/header.php"> <operation> <search position="after"><![CDATA[$_['text_backup']]]></search> <add><![CDATA[$_['text_export'] = 'Export / Import';]]></add> </operation> </file> <file name="admin/language/russian/common/header.php"> <operation> <search position="after"><![CDATA[$_['text_backup']]]></search> <add><![CDATA[$_['text_export'] = 'Экспорт / Импорт';]]></add> </operation> </file> <file name="admin/view/template/common/header.tpl"> <operation> <search position="after"><![CDATA[<li><a href="<?php echo $backup; ?>"><?php echo $text_backup; ?></a></li>]]></search> <add><![CDATA[ <li><a href="<?php echo $export; ?>"><?php echo $text_export; ?></a></li>]]></add> </operation> </file>
  19. На саму папку vqmod права дайте . В нее еще должен записатся файл mods.cache
  20. а да, забыл еще что у меня правленый вывод /*var cat_tmpl = $.template(null, '<tr><td><input id="cat_${category_id}" class="filtered" type="checkbox" name="categories[]" value="${category_id}" {{if checked}} checked="checked" {{/if}}></td>'+ '<td><label for="cat_${category_id}">${name}</label></td></tr>');*/ var cat_tmpl = $.template(null, '<tr><td><input id="cat_${category_id}" class="filtered" type="checkbox" name="categories[]" value="${category_id}" {{if checked}} checked="checked" {{/if}}>'+ '<label for="cat_${category_id}">${name}</label></td></tr>'); убрал лишний тег td файл отправил
  21. Есть ли решение чтобы отсортировать список аттрибутов по количеству товаров, принадлежащих этому аттрибуту?
×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.