Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

SooR

Користувачі
  • Публікації

    1 508
  • З нами

  • Відвідування

Повідомлення, опубліковані користувачем SooR

  1. Для начала, установите какой-нибудь отладчик MySQL запросов (вложил свой). 4-6к товаров в категории далеко не критичная масса.

    Да, самые прожорливые запросы окажутся такого вида

     

    Спойлер
    
    SELECT p.product_id,
    (SELECT AVG(rating) AS total
    FROM review r1
    WHERE
       r1.product_id = p.product_id AND
       r1.status = '1'
    GROUP BY r1.product_id)
     AS rating,
    (SELECT price
    FROM product_discount pd2
    WHERE
       pd2.product_id = p.product_id AND
       pd2.customer_group_id = '1' AND
       pd2.quantity = '1' AND
       ((pd2.date_start = '0000-00-00' OR pd2.date_start < NOW()) AND
       (pd2.date_end = '0000-00-00' OR pd2.date_end > NOW()))
    ORDER BY pd2.priority ASC, pd2.price ASC
    LIMIT 1)
     AS discount,
    (SELECT price
    FROM product_special ps
    WHERE
       ps.product_id = p.product_id AND
       ps.customer_group_id = '1' AND
       ((ps.date_start = '0000-00-00' OR ps.date_start < NOW()) AND
       (ps.date_end = '0000-00-00' OR ps.date_end > NOW()))
    ORDER BY ps.priority ASC, ps.price ASC
    LIMIT 1)
     AS special
    FROM product_to_category p2c
    LEFT JOIN product p ON (p2c.product_id = p.product_id)
    LEFT JOIN product_description pd ON (p.product_id = pd.product_id)
    LEFT JOIN product_to_store p2s ON (p.product_id = p2s.product_id)
    WHERE
       pd.language_id = '1' AND
       p.status = '1' AND
       p.date_available <= NOW() AND
       p2s.store_id = '0' AND
       p2c.category_id = '64'
    GROUP BY p.product_id
    ORDER BY p.sort_order ASC, LCASE(pd.name) ASC
    LIMIT 0,18

     

     

    но выполнятся они должны в нормальных условиях до 0,4 сек, а таких запросов на подгрузку страницы категории - до 2-х.

     

    Сегодня похожая ерунда была с одним магазином. Там переносили товары непонятно как, пересоздавали таблицы, залили какой-то дамп с CREATE таблиц без индексов, так и оставили. Все таблицы, которые начинались с product_ были без индексов.

    И еще, это может быть разросшийся файл логов или кэша. Удалите файлы логов и кэша.

    Отладка нужна.

     

     

    query-log-opencart-2.zip

  2. Перейдите в 

     

    catalog/controller/product/category.php

     

    найдите строку 

    'filter_category_id' => $category_id,

    после нее вставьте

    'filter_sub_category' => true,

    сохраните файл, очистите и обновите модификаторы в админке.

    • +1 1
  3. В 08.03.2018 в 11:17, konorws сказал:

    Опенкарт берет своей не требовательностью и простотой. Но все же я одам преимущество мадженте если это будет большой магазин. Если что то простенькое (до 20к товаров и немного функционала) то это опенкарт 

     

    Вот и найдена единица измерения интернет-магазинов. Количество товаров. Назовем это TPC (Total Product Count).

    Также предлагаю ввести уточняющую единицу для категорий TPC/c и производителей TPC/m.

     

    Можно вносить в систему СИ.

  4. @redisskaru , добрый.

     

    Логика фильтрации внутри одного фильтра всегда ИЛИ, но если использовать переключатели (radio), то выбрав второй цвет, уже выбранный ранее будет выключаться.

    Укажите фильтру "Цвет" тип "Переключатель".

  5. @mario512 , здравствуйте.

    Напрямую связывать разные фильтры нельзя, но если выключить отображение неактивных фильтров (с нулевым кол-вом товаров), то при выборе одного производителя, модельный ряд других производителей скроется. 
    То есть в таком случае связующим элементом между двумя фильтрами служат товары, которые и определяют видимость одних фильтров при выборе других.

  6. @zik920 , ничего не понял про западание строчек.

     

    Режим срабатывания мобильной версии управляется исключительно классами BS.

    Когда блок мобильной версии становится видимым, тогда срабатывает мобильная версия.

    А видимым он будет по этим классам

    <div class="ocf-offcanvas ocfilter-mobile hidden-sm hidden-md hidden-lg">
      ...
    </div>

    уберите hidden-sm и будет появляться раньше.

  7. @Jfokill , нужно было связаться с ним в первую очередь, запросить обновление модуля и т.д.

     

    1. Откройте catalog/controller/[extension/]module/ocfilter.php

    2. Замените все

    $this->cache->set

    на

    //$this->cache->set

    а

    $this->cache->get

    на 

    false; //$this->cache->get

    3. Тоже самое проделать в файле catalog/model/catalog/ocfilter.php

    4. Очистите кэш

     

     

  8. 15 минут назад, prochet сказал:

    Подскажите, как бы(где) поменять отображение икноки фильтра на мобильных?

    В шаблоне, 

     

    catalog/view/theme/default/template/[extension]/module/ocfilter/module.tpl

    <button type="button" class="btn btn-primary" data-toggle="offcanvas"><i class="fa fa-filter"></i></button>

     

  9. @final4ik , да, правильней будет договориться. Но как временный вариант, можно сделать следующее

     

    1. откройте catalog/controller/product/category.php

    2. после

    $data['continue'] = $this->url->link('common/home');

    добавьте

     

    if (isset($this->request->get['page']) && method_exists($this->document, 'setNoindex')) {
      $this->document->setNoindex(false);
    }

    3. очистите и обновите модификаторы

     

    Какие еще страницы (с какими параметрами) выдают два тега с noindex?

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.