Перейти к содержанию

Лидеры

  1. Tom

    Tom

    Разработчик


    • Баллы

      35

    • Постов

      297


  2. Blast

    Blast

    Разработчик


    • Баллы

      25

    • Постов

      106


  3. AlexDW

    AlexDW

    Разработчик


    • Баллы

      23

    • Постов

      618


  4. mpn2005

    mpn2005

    Разработчик


    • Баллы

      9

    • Постов

      573


Популярный контент

Показан контент с высокой репутацией за 27.10.2024 в Сообщения

  1. 67к товаров, 26к связей в hpmodel_links, 2.5к отзывов, вызов getProduct() занимает около 70мс и если на странице в модулях набирается больше 10 товаров получается довольно большая задержка. Удалось ускорить работу метода в 10-15 раз заменив 2 подзапроса к review на один и немного оптимизировав его: --- z_hpm14.ocmod.xml~070725 2025-02-12 14:38:04.067381375 +0300 +++ z_hpm14.ocmod.xml 2025-07-07 08:51:32.842664104 +0300 @@ -169,11 +169,15 @@ </operation> <operation error="skip"> <search index="0"><![CDATA[(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]]></search> - <add position="replace"><![CDATA[(SELECT AVG(rating) AS total FROM " . DB_PREFIX . "review r1 LEFT JOIN " . DB_PREFIX . "hpmodel_links hpl ON (r1.product_id = hpl.product_id OR r1.product_id = hpl.parent_id) WHERE (" . ($parent_id !== false ? "hpl.parent_id = '" . (int)$parent_id . "'" : "r1.product_id = p.product_id") . ") AND r1.status = '1' GROUP BY " . ($parent_id !== false ? "hpl.parent_id" : "r1.product_id") . ") AS rating]]></add> + <add position="replace"><![CDATA[(SELECT CONCAT(AVG(rating),';',COUNT(review_id)) FROM " . DB_PREFIX . "review r1" . ($parent_id !== false ? " LEFT JOIN " . DB_PREFIX . "hpmodel_links hpl ON (r1.product_id = hpl.product_id)" : "") . " WHERE r1.product_id = p.product_id" . ($parent_id !== false ? " OR hpl.parent_id = '" . (int)$parent_id . "'" : "") . " AND r1.status = '1' GROUP BY " . ($parent_id !== false ? "hpl.parent_id" : "r1.product_id") . ") AS rating]]></add> </operation> <operation error="skip"> <search index="0"><![CDATA[(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]]></search> - <add position="replace"><![CDATA[(SELECT COUNT(DISTINCT review_id) AS total FROM " . DB_PREFIX . "review r2 LEFT JOIN " . DB_PREFIX . "hpmodel_links hpl ON (r2.product_id = hpl.product_id OR r2.product_id = hpl.parent_id) WHERE (" . ($parent_id !== false ? "hpl.parent_id = '" . (int)$parent_id . "'" : "r2.product_id = p.product_id") . ") AND r2.status = '1' GROUP BY " . ($parent_id !== false ? "hpl.parent_id" : "r2.product_id") . ") AS reviews]]></add> + <add><![CDATA[NULL]]></add> + </operation> + <operation error="skip"> + <search index="0"><![CDATA[=> $query->row['reviews'] ? $query->row['reviews'] : 0,]]></search> + <add><![CDATA[=> $query->row['rating'] ? explode(';', $query->row['rating'])[1] : 0,]]></add> </operation> </file>
    4 балла
  2. В самом начале кода контроллера ЧПУ есть пример для такой реализации: https://github.com/mpn2005/ocClub3/blob/ocClub3/upload/catalog/controller/startup/seo_url.php
    4 балла
  3. https://github.com/mpn2005/ocClub3/commit/1300040f6ff5ccfe95a4d0c8cceb4ef36a892791 если в искомой фразе есть хотя бы одна-две цифры, что нередко бывает в емейлах, то находит сотни, тысячи лишних покупателей, где в номере телефона есть такая цифра. можно не искать по телефону, если в искомой фразе есть символ @. в этом случае юзер точно хочет искать только по емейлу
    4 балла
  4. В схожей ситуации , данное решение предложил сам хостер. Сразу после RewriteCond %{REQUEST_URI} !.*\.(ico|gif|jpg|jpeg|png|js|css) добавить RewriteRule ^([^?]*) index.php?_route_=$1 [B,L,QSA,UnsafeAllow3F] Ну и как вариант от меня (так же нужно проверять). # Преобразование UTM-меток от Яндекс.Товаров RewriteCond %{QUERY_STRING} utm_referrer=https%3A%2F%2Fyandex\.ru%2Fproducts(.*) RewriteRule ^(.*)$ $1?utm_source=yandex&utm_medium=products [R=301,L] Применяет UnsafeAllow3F только для трафика с Яндекс. Сохраняет UTM-метки в исходном виде Не создает дополнительных редиректов Минимально влияет на существующую логику работы сайта
    4 балла
  5. похоже просто закэшировалось в системном кэше для его сброса подключитесь по FTP к папке storage своего магазина и в ваша_папка_storage/cache удалите все файлы начинающиеся на caсhe. (ничего другого удалять не нужно!)
    3 балла
  6. прислал заказчик инфу, что при переходе на сайт по ссылке с Яндекс.товаров сайт отдает 403 ошибку. общение с хостером ничего не дало, начал выяснять в чем тут дело. в url добавляется utm метка utm_referrer=https://yandex.ru/products/search?text=текст на сервак естественно приходит перекодированный вариант вида https://domain/path-to-product?utm_referrer=https%3A%2F%2Fyandex.ru%2Fproducts%2Fsearch%3Ftext%3D%D1%82%D0%B5%D0%BA%D1%81%D1%82 методом проб выяснил что если заменить %3F на что-то другое, то сайт вполне работает. похоже, что обновление безопасности апача запретило использовать hex-перекодированный символ "?" в "%3F" в url. наткнулся на такое обсуждение https://stackoverflow.com/questions/78729429/403-forbidden-when-url-contains-get-with-encoded-question-mark-unsafeallow3f заменил в .htaccess строку RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA] на RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA,UnsafeAllow3F] работать то работает, но интересно насколько это безопасно и есть ли другие решения, учитывая что и php'шный urlencode и js'овский encodeURIComponent по-прежнему кодируют этот символ в %3F
    3 балла
  7. в поле ean 14 символов отведено в базе. зайдите в phpmyadmin, кликните на таблицу oc_product, далее на вкладку Структура. отредактируйте поле ean и впишите число побольше
    3 балла
  8. Идея хорошая. Реализация не очень. Ни в коем случае нельзя заменять какие либо системные файлы. В данном случае вы могли файл назвать extension_new.twig Запаковать архив в ocmod ( tab_for_ext_oc3x.ocmod.zip ) Ну и добавить модификатор install.xml который бы просто подменил путь до шаблона <?xml version="1.0" encoding="utf-8"?> <modification> <name>Tab for Ext</name> <code>Tab for Ext</code> <version>1.0</version> <author>freeworld</author> <link>Tab for Ext</link> <file path="admin/controller/marketplace/extension.php"> <operation> <search><![CDATA[$this->response->setOutput($this->load->view('marketplace/extension', $data));]]></search> <add position="replace"><![CDATA[$this->response->setOutput($this->load->view('marketplace/extension_new', $data));]]></add> </operation> </file> </modification> Получаете безопасную установку/удаление через админку. Не затрагиваете системные файлы.
    3 балла
  9. Модификатор для украшения к Новому Году. Рекомендую не забывать, что удалять их нужно, раньше чем выкидывать в мае ёлку. Установка через админку : 1. Дополнения-Установка дополнений. 2. После чего обязательно обновить кэш модификаторов (дополнения-менеджер дополнений), синяя круглая иконка справа вверху. "Новогодняя мотня от Яндекс" - выводит в шапке новогодние шарики-игрушки, при проведении по ним мышкой издаёт звуки. Тот же эффект при нажатии кнопок на клавиатуре. В мобильной версии скрыто (<div class="b-page_newyear hidden-sm hidden-xs">) NewYear2025.ocmod.zip
    3 балла
  10. потому что во вьюху вставили новые поля до языковых вкладок. делайте вставку не до <div class="form-group required"> а например после <div class="tab-pane" id="language{{ language.language_id }}">
    2 балла
  11. в /catalog/controller/checkout/simplecheckout_cart.php после 'model' => $product['model'], добавьте 'isbn' => $product_info['isbn'], в /catalog/view/theme/default/template/checkout/simplecheckout_cart.twig замените {{ product['model'] }} на {{ product['isbn'] }} обновить модификаторы
    2 балла
  12. Например https://opencart.club/files/file/30-hyper-product-models-ajax-zamena-tovara-po-modelyam/ Обычно картинки это отдельные артикулы товара.
    2 балла
  13. Приветствую, это предложил автор данного модуля, дает возможность редактировать данные непосредственно в Batch Editor Для этого в настройках модуля вкладка Связи добавьте новую и выберите таблицу hpmodel_links
    2 балла
  14. Такие решения есть, только толку от них нет. Товары хорошо так заполнять, но вот производителей и категории лучше ручками проработать. Просто поверьте наслово)
    2 балла
  15. если собираетесь делать магазин на Opencart - значит нужно изучить движок как минимум на уровне пользователя либо нанять кого-то, кто у вас будет этим заниматься
    2 балла
  16. Нет, поначалу начал писать автору HYPER Multi Product Models в личку, но тот попросил писать по вопросам модуля в этот форум поддержки, на форуме, конечно, тоже тишина. Модуль HYPER Multi Product Models ложит сайт на Просторе на раз-два, в первые минуты настройки. Простор недавно обновился до версии 1.3.1, а файлы адаптации скорее всего для более ранних версий. По отзывам 22 и 23 годах для дополнения HYPER Multi Product Models была хорошая и быстрая поддержка, сейчас поддержки нет. 10 тыс руб в пролете :)
    2 балла
  17. Да, как сказано выше, в базе данных увеличьте количество символов, к примеру до 128 байт
    2 балла
  18. NewsBlog - неограниченное количество категорий со статьями Добавил netruxa Добавлено 04.02.2025 Категория Блоги, Новости, Статьи Просмотр файла  
    2 балла
  19. мой вопрос снимается. установлен FilterVier. для совместимости нужно установить галку fix hyper_product_models в настройках фильтра
    2 балла
  20. Спасибо за помощь нашел у себя какой то модуль Изображений для категорий переделал и сделал модуль с выводом как баннера одно так и сделать слайдер category_banner_3.x.ocmod.zip
    2 балла
  21. В опенкарт любой версии полно неиспользуемых полей. Берите любое , например mpn и замените в админке вывод текстового инпута на переключатель Да-Нет. <?xml version="1.0" encoding="UTF-8"?> <modification> <name>Change MPN to Yes-No and Display in Frontend</name> <code>change_mpn_to_yes_no_and_display</code> <version>1.0</version> <author>Tom</author> <link>https://www.yoursite.com</link> <file path="admin/view/template/catalog/product_form.twig"> <operation> <search><![CDATA[<input type="text" name="mpn" value="{{ mpn }}" placeholder="{{ entry_mpn }}" id="input-mpn" class="form-control"/>]]></search> <add position="replace"><![CDATA[ <select name="mpn" id="input-mpn" class="form-control"> <option value="1" {{ mpn == '1' ? 'selected' : '' }}>Да</option> <option value="0" {{ mpn == '0' ? 'selected' : '' }}>Нет</option> </select> ]]></add> </operation> </file> <file path="catalog/controller/product/product.php"> <operation> <search><![CDATA[$data['points'] = $product_info['points'];]]></search> <add position="after"><![CDATA[$data['mpn'] = $product_info['mpn'];]]></add> </operation> </file> <file path="catalog/view/theme/default/template/product/product.twig"> <operation> <search><![CDATA[{% if price %}]]></search> <add position="before"><![CDATA[ {% if mpn == '1' %} <div class="product-mpn-enabled"> <!-- Контент для активации MPN --> <p>Этот блок включен для данного товара.</p> </div> {% elseif mpn == '0' %} <div class="product-mpn-disabled"> <!-- Контент для деактивации MPN --> <p>Этот блок отключен для данного товара.</p> </div> {% endif %} ]]></add> </operation> </file> </modification> Нет возможности использовать mpn, заменяйте на любое иное существующее значение типа jan, isbn, upc, location
    2 балла
  22. В разделе связи у Вас выбраны нужные категории-производители? Обратите внимание, что первая связка не должна пересекаться по категориям связи со второй.
    2 балла
  23. Сделайте ПР и будет быстрее. Всё это развивается в свободное от работы время. А вы проверили актуальный код, перед написанием ишью? Странный подход, что кто-то должен перепроверять, отвечать, делать ещё и быстро.
    2 балла
  24. как вариант воткнуть патч но лучше вообще не использовать встроенный в админку редактор и вносить правки в файлы либо напрямую, либо, что более правильно - через модификаторы
    2 балла
  25. Gray Images - Unishop2GrayImages Небольшой мод для товаров в категории. Если товара нет в наличии , то его изображение становится чёрно-белым. Unishop2GrayImages.zip
    2 балла
  26. этому поставщику нужен другой файл. После 15 августа смогу подключиться.
    1 балл
  27. Мы не можем работать с сайтом без активного периода технической поддержки, на демо-сайте все работает корректно.
    1 балл
  28. @drugoinafanya Шаблон не меняет сортировку опций или атрибутов, это стандартный функционал opencart. По порядку сортировки и по имени. Что касается почты, отправьте доступы к сайту и FTP в личном сообщении, сделаем.
    1 балл
  29. PRICE MASTER - Модуль импорта/экспорта товаров, парсинг, перевод, генерация текстов, редактор каталога и многое другое Добавил ScriptBrains Добавлено 12.09.2024 Категория Импорт и Экспорт , Парсеры и Грабберы , Администрирование , Массовые редакторы Просмотр файла  
    1 балл
  30. Изменения в настройках не помогают
    1 балл
  31. Это явно задача фильтра и посадочных страниц , а не опенкарт, который с такой логикой придётся основательно перепилить, что в итоге может привести к проблемам как в Сео так и и с другими расширениями.
    1 балл
  32. После покупки модуля пишите в личку автору и он скинет файлы модуля
    1 балл
  33. Гайс, я второй день ломаю голову над проблемой с модулем Импорт / Экспорт anyCSV/XLS/YML PRO PIM Edition Opencart. Поставил, первый раз загрузил товары почти без проблем (были варнинги из-за того что в выгружаемых файлах были png вместо gpeg, поправил ). Теперь при попытке загрузить новые товары с новой ссылки yml у меня все равно загружаются (или обновляются) все мои старые товары. Я уже и модуль удалял, и базу чистил. Что это может быть? Откуда подгружаются старые товары и как это все исправить? (Плюс еще какой-то баг, что в каталоге товаров у меня 59 категорий, но ни одного не показывается. Не знаю, связано это или нет)
    1 балл
  34. Manufacturer Description - описание и мета-теги для производителя Добавил AlexDW Добавлено 02.06.2022 Категория Seo оптимизация, Карта сайта, Теги , Виджеты, Модули , Прочие Решения , Администрирование Просмотр файла
    1 балл
  35. Отзывы о товарах Добавил seregin-pro Добавлено 20.04.2025 Категория Отзывы и Комментарии Просмотр файла  
    1 балл
  36. Установили и активировали Hyper Multi Product Models. Встал практически без проблем. Сайт: OpenCart Version 3.0.3.8 (rs.2) Шаблон ПРОСТОР Версия 1.3.1 A-Telegram уведомление - v3.2.1 Простая регистрация и заказ Simple [OCN] Стена Категорий Про Опции в категориях: Настройки После установки возникла ошибка: При деактивации модификатора пропадала. Но как выяснил человек помогающий мне в настройке и адаптации, вина ошибки не модуль а шаблон. В модуле Простор. Товары в блоках-Лидеры продаж-Сортировка товаров-По умолчанию. Ошибки нет. У меня стояла сортировка-Лидеры продаж. При такой сортировке появлялась ошибка. То что мне написал настройщик:
    1 балл
  37. так вроде никогда не будет поиска по емейлу, если мы хотим найти по части емейла
    1 балл
  38. document.addEventListener("DOMContentLoaded", function(event) { setTimeout(function(){ let banners = document.querySelectorAll(".js-swiper-banners"); banners.forEach(function(el){ el.swiper.params.autoplay = { enabled: true, delay: 3000, stopOnLastSlide: false, disableOnInteraction: true, reverseDirection: false, waitForTransition: true }; el.swiper.update(); el.swiper.autoplay.start(); }); }, 2000); }); Вставь во вкладку JS в настройках шаблона
    1 балл
  39. Подскажите, а как можно реализовать плоскую структуру категорий? Имеется ли модуль для сборки опенкарт клуб?
    1 балл
  40. Оплата через YooMoney (ЮMoney) Добавил Safonov Добавлено 24.02.2025 Категория Платежные системы Просмотр файла  
    1 балл
  41. Tab for Ext Добавил freeworld Добавлено 27.01.2025 Категория Прочие Решения Просмотр файла  
    1 балл
  42. можете поставить Ничего не делать, а в Событиях поставить - Обнулить необновленные товары
    1 балл
  43. ocStore с ней можно работать, но там есть есть нюансы у клубной сборки. Про нюансы можно почитать, что было сделано по этой сборке по любому вам нужен будет программист. где то может модуль будет конфликтовать или не работать с шаблоном или еще что то а этот шаблон тоже имеет свою специфику и точно так же с ним не все модули работают или не у всех модулей есть поддержка этого шаблона
    1 балл
  44. if ($host = '1.2.3.4') { return 301 https://$server_name$request_uri; }
    1 балл
  45. Грубо говоря делаешь фильтр с нужными настройками фильтрации и делаешь отдельный макет для категории, для категории во вкладке Дизайн ставишь этот макет и там будет выводиться нужный фильтр. Примерно такая логика.
    1 балл
  46. Оказывается нужно еще было в настройках магазина ее выбрать. После этого автоматом завелось. Спасибо за полезное дополнение!!!
    1 балл
  47. Там есть настройка, которая включает автоматический выбор первой доступной доставки.
    1 балл
  48. Делал как то по просьбе. Смысл задачи был такой. Выводим в карточке товара во вкладках статьи (Каталог - Статьи). В качестве названия вкладки Заголовок статьи, ну и содержимое это Описание статьи. При чём без привязки к конкретной статье , как в примере ТС. Добавил просто чекбокс "Показать в товаре", аналог "Отображать в футере". Отмечаем чекбокс и статьи выводятся в товаре в любом количестве. Так мне кажется логичнее и удобнее. Статьи во Вкладках.ocmod.xml
    1 балл
  49. в \catalog\controller\account\logout.php после $this->customer->logout(); добавьте код unset($this->session->data['customer']['customer_group_id']); unset($this->session->data['simple']); unset($this->session->data['guest']['customer_group_id']);
    1 балл
  50. Огромное, человеческое, спасибо!!! Причина была в способе оплаты. Стояла настройка: После оплаты - ставился статус "аннулировано"
    1 балл
×
×
  • Создать...