[FAQ] Настройки, оптимизации, фичи, статьи для OpenCart

Тема в разделе "OpenCart", создана пользователем VeroN, 23 дек 2012.

  1. VeroN

    VeroN

    Регистрация:
    26 ноя 2012
    Сообщения:
    82
    Симпатии:
    316
    « Правила раздела »
    1. Обсуждения - запрещены! Здесь размещаются только "готовые решения".
    2. Если хотите отблагодарить автора поста, то используем кнопку «Мне нравится». Создавать для этого новые сообщения не нужно!
    3. Размещать ссылки на сторонние ресурсы - запрещено.
    4. Если у вас возникли вопросы по одному из сообщений и вы считаете, что оно требует доработки или прочих изменений, то свяжитесь с автором поста для редактирования информации или сообщите одному из модераторов раздела для внесения изменений при помощи личных сообщений или кнопки "Пожаловаться".
    Правила оформления сообщения
    1. Название - для удобного поиска.
    2. Использовать размер шрифта для заголовков не больше 5, для остального не меньше 3 (стандартный). Если используете другой "цвет" шрифта, то он должен быть адекватным и не содержать 'радуги' или 'ядовитый' оттенок, который при просмотре ломает глаза.
    3. Для кода используем соответствующие теги, если код длинный, то прячем под "спойлер".
    4. Свободная информация взятая из интернета под хайдом не устанавливается! Если это ваш личный метод, то хайд на ваше усмотрение.
    Пример:
    « Меняем иконку для сайта »

    По умолчанию стандартная иконка имеет вид корзины для покупок. Рисуем свою иконку (16х16 px), сохраняем ее как "favicon.ico" и загружаем в корень сайта. Открываем файл "header.tpl" (путь: catalog\view\theme\default\template\common) и добавляем строчку:
    Код:
    <link rel="shortcut icon" href="/favicon.ico">
    - - -
    С уважением,
    Администрация форума
     
    rrrrsrer79, hisbvdis, Zelveger и 3 другим нравится это.
  2. kolich85

    kolich85

    Регистрация:
    19 сен 2013
    Сообщения:
    164
    Симпатии:
    93
    Перезалейти фаил.. Пожалуста..
     
  3. alex_storm

    alex_storm webdev

    Регистрация:
    11 дек 2012
    Сообщения:
    1.151
    Симпатии:
    667
    Скрываем контент для пользователей, которые не сделали покупки:
    на примере скрытия отзывов для товара

    Открываем файл - catalog/controller/product/product.php
    Перед записью:

    PHP:
    $this->data['tab_description'] = $this->language->get('tab_description');
    Добавляем:
    PHP:
    $this->load->model('catalog/review_customers');
    $this->data['review_customers'] = $this->model_catalog_review_customers->getReviewCustomerByOrders($product_id$this->customer->getId());

    Открываем файл - catalog/view/theme/you_theme/template/product/product.tpl
    Заменим:

    PHP:
    <?php if ($review_status) { ?>
    На это:
    PHP:
    <?php if ($review_status && !empty($review_customers)) { ?>
    В папке catalog/model/catalog создаем файл с названием review_customers.php со следующим содержимим:
    PHP:
    <?php
    class ModelCatalogReviewCustomers extends Model {   
      public function 
    getReviewCustomerByOrders($product_id$customer_id) {
              
    $sql "SELECT r.product_id
                            FROM " 
    DB_PREFIX "`order` o
                            INNER JOIN " 
    DB_PREFIX "order_product op ON (op.order_id = o.order_id)
                            INNER JOIN " 
    DB_PREFIX "review r ON (r.product_id = op.product_id)
                            WHERE op.product_id = " 
    . (int)$product_id "
                            AND o.customer_id = " 
    . (int)$customer_id "
                            LIMIT 1
                            "
    ;
              
    $query $this->db->query($sql);
              return 
    $query->row;
      }
    }
    ?>
    Принцип работает для любого модуля или страницы!

     
    vavito, Maksim***, nick885 и ещё 1-му нравится это.
  4. gnommong

    gnommong

    Регистрация:
    29 июн 2013
    Сообщения:
    175
    Симпатии:
    194
    Выкладываю код файла для автоматической обработки конфиг файлов при переносе магазина на хост. Ранее я выкладывал его файлом.
    Инструкция та же. Пропишите данные на свою БД и сохраните в корень. Запустите файл.
     
    kolich85 нравится это.
  5. alex_storm

    alex_storm webdev

    Регистрация:
    11 дек 2012
    Сообщения:
    1.151
    Симпатии:
    667
    Более продвинутый robots.txt и .htaccess
    файл robots.txt:
    * заменить site.ru на адрес своего сайта.


    файл .htaccess
    * заменить site.ru на адрес своего сайта.

     
    Последнее редактирование: 16 фев 2014
    spin3d07, Dema, okzim и 24 другим нравится это.
  6. gnommong

    gnommong

    Регистрация:
    29 июн 2013
    Сообщения:
    175
    Симпатии:
    194
    А можно в 2х словах, чем лучше эти варианты? Что допилено?
     
  7. alex_storm

    alex_storm webdev

    Регистрация:
    11 дек 2012
    Сообщения:
    1.151
    Симпатии:
    667
    Добавленны ссылки, которые попадали в индекс + добавлен дополнительная склейка сайта, добавлена защита на файлы.
     
    Sjvka, SkyLine и Sedmi нравится это.
  8. Igorek1985

    Igorek1985

    Регистрация:
    11 апр 2013
    Сообщения:
    21
    Симпатии:
    0
    Столкнулся с проблемой в ошибке 404, несуществующая страница отдает код 200 (переезжал на с другого движка).
    Где то нашел решение (у меня версия 1.5.4.1):
    в самом начале файла /catalog/view/theme/[ваша тема]/template/error/not_found.tpl
    вставить

     
  9. alex_storm

    alex_storm webdev

    Регистрация:
    11 дек 2012
    Сообщения:
    1.151
    Симпатии:
    667
    Т.е. это решение отдает 404 HTTP заголовок браузеру?
     
    pactum нравится это.
  10. Igorek1985

    Igorek1985

    Регистрация:
    11 апр 2013
    Сообщения:
    21
    Симпатии:
    0
    Ну я в яндекс вебмастере забивал страничку и смотрел ответ, был 404, но дополнительно еще удалил все url не существующие (без 404 ответа удалить не давало)

    P.S. Не совсем понял что значит отдавать заголовок браузеру, не силен в терминалогии )
     
  11. passtools

    passtools

    Регистрация:
    4 фев 2013
    Сообщения:
    232
    Симпатии:
    52
    Можно по подробнее?
     
  12. alex_storm

    alex_storm webdev

    Регистрация:
    11 дек 2012
    Сообщения:
    1.151
    Симпатии:
    667
    Это сжатие
     
    OlegBon и passtools нравится это.
  13. видеотехника

    видеотехника

    Регистрация:
    1 авг 2013
    Сообщения:
    10
    Симпатии:
    5
    Только нужно не забыть курсы пересчитать, причем правильно, - а именно, сколько долларов в 1 рубле, а не наоборот, как привыкли в обменках, т.к. по умолчанию курс рубля выбран 1.00
    Вообще, проще, когда по умолчанию выбрана более дорогая валюта, если доллар 1.00, то курс евро к примеру, 0.73, а рубль как обычно 33,00 гривна 8,40.
    Можно еще автоматическое обновление курса включить, не пробовал, - т.к. наши курсы реальные и официальные часто не очень похожи.
    --- Добавлено, 7 дек 2013 ---
    реализовано в ocstore 1.5.5.1 без vQmod
     
    Последнее редактирование: 7 дек 2013
    v@dim нравится это.
  14. buldozer

    buldozer

    Регистрация:
    7 окт 2012
    Сообщения:
    107
    Симпатии:
    44
    А вот как сделать такое:
    Товар1 - его цена 10 Euro.
    Товар2 - его цена 100 Руб.
    при изменении курса все пересчитывается по валюте по умолчанию.
    если рубли то согласно курса пересчитается цена товара 1 но у него цена то 10 Евро а может получиться что он будет стоить 10,5 или 9,75 как с это победить...
     
  15. romlg

    romlg

    Регистрация:
    27 дек 2013
    Сообщения:
    1
    Симпатии:
    0
    у меня после добавления изменений в htaccess вылезла вот такая ошибка "an unknown filter was not added: DEFLATE"
    исправил её вот таким решением вместо

    AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/x-javascript
    BrowserMatch ^Mozilla/4 gzip-only-text/html
    BrowserMatch ^Mozilla/4\.0[678] no-gzip
    BrowserMatch \bMSIE !no-gzip !gzip-only-text/html

    добавил

    <IfModule mod_deflate.c>
    AddOutputFilterByType DEFLATE application/x-javascript
    AddOutputFilterByType DEFLATE text/javascript
    AddOutputFilterByType DEFLATE text/css
    AddOutputFilterByType DEFLATE text/xml
    AddOutputFilterByType DEFLATE text/plain
    AddOutputFilterByType DEFLATE text/html
    <IfModule mod_setenvif.c>
    BrowserMatch ^Mozilla/4 gzip-only-text/html
    BrowserMatch ^Mozilla/4\.0[678] no-gzip
    BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
    </IfModule>
    </IfModule>
    тут стоит проверка включен ли модуль mod_deflate и mod_setenvif и если включен тогда использовать инструкции
     
  16. Lora32

    Lora32

    Регистрация:
    28 фев 2013
    Сообщения:
    146
    Симпатии:
    152
    Перевод с аглийского на русский.

    Часто возникают вопросы как перевезти шаблоны или модули в админки опенкарта.
    Приходится делать перевод есле ставиш платные темы. Иногда приходится лопатить много файлов прежде чем добьешся результата.
    Бывают случаи когда нужно сократить фразу.
    Мне очень помог в этом модуль поэтому решил поделиться.

    Easy Language Editor

     
  17. Лиза

    Лиза

    Регистрация:
    13 дек 2012
    Сообщения:
    1
    Симпатии:
    0
    после замены файла перестают открываться ссылки из шапки - корзин, о нас и тп. пишет ошибку в строке 67
     
  18. five555

    five555

    Регистрация:
    18 янв 2014
    Сообщения:
    248
    Симпатии:
    149
    та же ситуация. открываются страницы только если отключить ЧПУ.
     
  19. Dimasscus

    Dimasscus

    Регистрация:
    10 фев 2013
    Сообщения:
    17
    Симпатии:
    1
    nix, nix,
    Помогите "разогнать". очень хочу применить Ваши рекомендации, но не имею достаточных навыков. Хостер тоже предлагал ВПС но я отказался. Все страницы работаю нормально, но на главной много категорий с картинками, и судя по логу- больше 2500 запросов сразу. главная открывается по 10-15 секунд.
    Готов оплатить Вашу помощь.
    если есть время и желание помочь- ответьте мне пожалуйста.

    Заранее благодарен. С ув. Дмитрий.
     
    v@dim нравится это.
  20. x-guest

    x-guest Команда форума

    Регистрация:
    8 окт 2012
    Сообщения:
    276
    Симпатии:
    979
    Как установить заглушку для IE 5.5; IE 6; IE 7; IE 8; IE 9 на Opencart и Ocstore (прощай наш старый ослик)
    Заглушка ?
    — страница, которая будет высвечиваться для всех пользователей, которые пользуются старым браузером.
    Зачем она мне ? — допустим у вас есть сайт, в данном случае это магазин работающий на CMC Opencart и Клиенты (ДИНОЗАВРЫ web серфинга) из личного опыта скажу что их осталось не много чуть более 10% :wink: но тем не менее это потенциальные ваши клиенты которые до сих пор пользуется Браузером Internet Explorer.
    На просторах мировой паутины существуют множество решений данной проблемы - не рассматриваем оптимизацию кода под данный браузер Internet Explorer (только запрет и всплывающие уведомления о том что стоит обновить свой браузер или сменить его :biggrin:)
     
    Последнее редактирование: 7 фев 2014
    fori, and1, halfhope и 2 другим нравится это.
  21. x-guest

    x-guest Команда форума

    Регистрация:
    8 окт 2012
    Сообщения:
    276
    Симпатии:
    979
    Прелоадер страницы или же плавное появление контента
    [​IMG] [​IMG]...

     
    Последнее редактирование: 22 окт 2015
    autoshop, and1, Zulus и 5 другим нравится это.