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

RGB

Users
  • Posts

    6,973
  • Joined

  • Last visited

Everything posted by RGB

  1. У меня - как в статье есть и такой кусок с SQL_CALC_FOUND_ROWS $sql = "SELECT SQL_CALC_FOUND_ROWS p.product_id, (SELECT AVG(rating) AS total FROM " . DB_PREFIX . "review r1 WHERE r1.product_id = p.product_id AND r1.status = '1' GROUP BY r1.product_id) AS rating, (SELECT price FROM " . DB_PREFIX . "product_discount pd2 WHERE pd2.product_id = p.product_id AND pd2.customer_group_id = '" . (int)$customer_group_id . "' AND pd2.quantity = '1' AND ((pd2.date_start = '0000-00-00' OR pd2.date_start < '" . $this->NOW . "') AND (pd2.date_end = '0000-00-00' OR pd2.date_end > '" . $this->NOW . "')) ORDER BY pd2.priority ASC, pd2.price ASC LIMIT 1) AS discount, (SELECT price FROM " . DB_PREFIX . "product_special ps WHERE ps.product_id = p.product_id AND ps.customer_group_id = '" . (int)$customer_group_id . "' AND ((ps.date_start = '0000-00-00' OR ps.date_start < '" . $this->NOW . "') AND (ps.date_end = '0000-00-00' OR ps.date_end > '" . $this->NOW . "')) ORDER BY ps.priority ASC, ps.price ASC LIMIT 1) AS special FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) LEFT JOIN " . DB_PREFIX . "product_to_store p2s ON (p.product_id = p2s.product_id)"; А подсчет количества я сам выпилил давно уже, поэтому он не влияет
  2. Как я ни пытался применить изменения из статьи, подгоняя их под более старую версию ОС, не мог избавиться от ошибок из-за несоответствия 1.5.5.1 и 1.5.2.1, в итоге просто убрал rating из запроса (как я понимаю, в моей версии этого нет) $query = $this->db->query("SELECT DISTINCT *, pd.name AS name, p.image, m.name AS manufacturer, (SELECT points FROM " . DB_PREFIX . "product_reward pr WHERE pr.product_id = p.product_id AND customer_group_id = '" . (int)$customer_group_id . "') AS reward, (SELECT ss.name FROM " . DB_PREFIX . "stock_status ss WHERE ss.stock_status_id = p.stock_status_id AND ss.language_id = '" . (int)$this->config->get('config_language_id') . "') AS stock_status, (SELECT wcd.unit FROM " . DB_PREFIX . "weight_class_description wcd WHERE p.weight_class_id = wcd.weight_class_id AND wcd.language_id = '" . (int)$this->config->get('config_language_id') . "') AS weight_class, (SELECT lcd.unit FROM " . DB_PREFIX . "length_class_description lcd WHERE p.length_class_id = lcd.length_class_id AND lcd.language_id = '" . (int)$this->config->get('config_language_id') . "') AS length_class, (SELECT COUNT(*) AS total FROM " . DB_PREFIX . "review r2 WHERE r2.product_id = p.product_id AND r2.status = '1' GROUP BY r2.product_id) AS reviews, p.sort_order FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "manufacturer m ON (p.manufacturer_id = m.manufacturer_id) LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) WHERE p.product_id IN ('" . implode("','", array_keys($product_data)) . "')"); И наконец то загрузилась страница категории, но результаты меня как-то совсем не впечатлили (возможно я что-то упустил из виду, но изменений не много и они касаются всего 4 файлов, и единственные серьезные несоответствия есть только в контроллере product.php, но я их вроде бы все учел). Холодный старт с очищенным кешем БЕЗ изменений из статьи: Холодный старт с очищенным кешем С изменениями из статьи: Горячий старт с кешем БЕЗ изменений из статьи: Горячий старт с кешем С изменениями из статьи: Все измерения проводились локально с тремя повторами для чистоты эксперимента, цифры приблизительно те же. В категории 4 000 товаров, на страницу вывод 15-ти, всего в магазине 16 000 товаров
  3. Дополнение обновлено, у кого были предупреждения про Undefined property - не забудьте обновиться и получить новый код API
  4. Между Opencart и Ocstore ощутимая разница, поэтому если вы не разбираетесь в этом, лучше адаптировать этот ваш шаблон под Ocstore, тем более что отличий в плане шаблонов между сборками не так уж и много
  5. Хорошая новость для тех, у кого нет сео_урл - скоро обновлю мод с использованием апи bit.ly вместо гугловского, тогда все должно будет работать даже в самых запущенных случаях :-) P.S. И у кого были проблемы с Undefined property: stdClass::$id, тоже все ок станет
  6. Ну так у вас ведь не используется seo-url, посмотрите первое сообщение в теме:
  7. кроме сафари, есть и другие браузеры, более лояльные к флешу :-)
  8. По моему виновата эта анимированная жесть на флеше в шапке
  9. https://opencartforum.com/files/category/6-%D0%BE%D0%B1%D0%BC%D0%B5%D0%BD-%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D0%BC%D0%B8/page__dosort__1__sort_key__file_rating__sort_order__desc__filter_key__all
  10. Главное чтобы у вас адрес был без символов типа "&" и т.п. В новой версии допустимы любые адреса
  11. Что же вы одну таблицу product импортировали? А эти (у вас их на парочку меньше, чем у меня, но все равно)? Через пхпмайадмин импортируются только полностью базы, по одиночку товары импортировать вам надоест уже после первого десятка, смотрите в сторону модулей импорта/экспорта
  12. Подключил, особой разницы что-то не заметно, так что мое пожелание насчет добавления сюда loadmask все еще в силе
  13. Очень круто, особенно с выложенным кодом измененных файлов! Но их всего 4 получилось? А как же контроллер акций? Или вы решили вырезать функциональность акционных цен, но тогда почему на гитхабе сохранились запросы из полей product_special? И я так понимаю, вы не делали денормализацию бд, а просто упомянули о том, что она тоже может помочь?
  14. Да, а потом почистить кеш вкмода и написать сюда о результатах :-)
  15. Похоже, что код, используемый в этом решении, не устраивает стандарты той версии пхп, которая используется у вас на сервере. Тут ничего страшного нет, т.к. это не ошибка, а предупреждение. Самый простой способ, который мне пришел в голову - добавьте перед участком кода $url = $json->id; что-то вроде $id; чтобы получилось вот так: $id; $url = $json->id; или просто отключите запись предупреждений в логах сервера.
  16. Barcelona, вы бы хоть из приличия открыли первые ссылки из моего сообщения
  17. Косвенно эту проблему решает vqmod рождая другие проблемы :-)
  18. Меня спрашивают, зачем усложнять простую работу с апи гугла по построению qr-кодов (как, например, в дополнении товарища mzn) и применять еще и сокращение ссылок. Объясню наглядно, допустим у нас есть магазин с таким адресом к товару: supershop.com/Компьютеры/Программное_обеспечение/Музыкальные_редакторы/Sony_Sound_Forge Чтобы такая страница правильно открывалась, кириллица преобразуется в свой формат, и получается такая ссылка (в нормальных браузерах, не считая ie, отображается первый, читабельный, вариант): http://supershop.com/%D0%9A%D0%BE%D0%BC%D0%BF%D1%8C%D1%8E%D1%82%D0%B5%D1%80%D1%8B/%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D0%BE%D0%B5_%D0%BE%D0%B1%D0%B5%D1%81%D0%BF%D0%B5%D1%87%D0%B5%D0%BD%D0%B8%D0%B5/%D0%9C%D1%83%D0%B7%D1%8B%D0%BA%D0%B0%D0%BB%D1%8C%D0%BD%D1%8B%D0%B5_%D1%80%D0%B5%D0%B4%D0%B0%D0%BA%D1%82%D0%BE%D1%80%D1%8B/Sony_Sound_Forge Чтобы закодировать такую длинную ссылку в QR-код, нужен большой блок, но если мы сократим эту ссылку, используя апи гугла, то получим адрес (ведущий на ту же страницу): http://goo.gl/BX9Ny Естественно, для кодирования такой ссылки, нам нужно гораздо меньше места. Слева - результат кодирования полной ссылки, справа - сокращенной: Думаю разница очевидна.
  19. Нет, я не к тому спросил, что считаю это ненужным, а к тому, чтобы просто понять что это такое. Сам к сожалению до фб пока не дошел, тут бы с контактом разобраться и довести его до ума)
×
×
  • 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.