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

sv2109

Users
  • Posts

    3,685
  • Joined

  • Last visited

Everything posted by sv2109

  1. фух.. я же написал выше - учите MVC! Согласно MVC, который используется опенкартом, обработка всех запросов происходит через контроллеры, которые выводят результат своей работы в представления. Каждый модуль, а также все сущности опенкарта (товар, категория, поиск, аккаунт, оплата итд) имеют свой контроллер, который создает свой вывод. Результатом же общего вывода опенкарта является сумма выводов всех задействованных контроллеров.
  2. Гуглите по запросу "MVC", это шаблон проектирования, который используется опенкартом.
  3. https://opencartforum.com/files/file/1745-option-image-change-%D0%B8%D0%B7%D0%BC%D0%B5%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5-%D0%BA%D0%B0%D1%80%D1%82%D0%B8%D0%BD%D0%BA%D0%B8-%D1%82%D0%BE%D0%B2%D0%B0%D1%80%D0%B0-%D0%B2-%D0%B7%D0%B0%D0%B2%D0%B8%D1%81%D0%B8%D0%BC%D0%BE%D1%81%D1%82%D0%B8-%D0%BE%D1%82/
  4. Напишите мне в ЛС, укажите версию вашего модуля и версию движка
  5. Если это нужно для того, чтобы как-то стилизировать отмеченный чекбокс, то для этого не обязательно присваивать класс, можно использовать псевдо-классы css: input[type=checkbox]:checked { color: red; }
  6. Никаких "спорных вопросов": модель должна отвечать за вычисления, контролер за логику, шаблон за отображение готовых результатов. В шаблоне может присутствовать логика, но очень простая например условные операторы if, циклы foreach итд. Никакой сложной логики и тем более никаких вычислений в шаблоне быть не должно, для этого есть контроллер и модель. Это MVC. В своем первом после вы написали: "Сейчас масштабирование изображений происходит в контроллере. Но с точки зрения MVC, даже опенкартовского, это не совсем верно." То есть вы как раз таки и говорите о "проблеме опенкартовского MVC" Я же вам говорю, что никакой проблемы c MVC здесь нет, есть проблема с настройками для темы, но это вообще никак не относится к MVC. Точная формулировка проблемы это первый шаг для ее решения. Если же вы в постановке проблемы путаетесь в основных понятиях то так вы эту проблему не решите.
  7. MVC здесь не причем, с точки зрения MVC все сделано правильно - масштабирование должно происходить в модели, где оно собственно и происходит (ModelToolImage->resize()) Контроллер отвечает за логку - дает указание модели какое изображение до какого размера нужно масштабировать после чего отдает готовые результат шаблону. Шаблон не должен делать никаких вычисление и должен содержать минимум логики, он должен выводить готовый результат, что он и делает - выводит готовое масштабированное изображение, переданное ему контроллером. Проблема как я понял в настройках, передачи настроек в контроллер не из стандартных настроек опенкарта, а чтобы для каждой темы были свои настройки для размера изображений? Ну так это проблема самого опенкарта, а не MVC.
  8. "setInterval посредством ajax" или вбейте в гугле что-то типа "php ajax чат" по посмотрите исходники. Страница не может сама по себе просто обновиться, ей сначала нужно узнать что ей нужно обновиться, для этого нужно периодически опрашивать сервер нету ли изменений и не нужно ли обновиться. Но обновлять страницу для того чтобы напечатать сообщение пользователю это кощунство, такие вещи нужно делать без перезагрузки через аякс.
  9. Есть модуль https://opencartforum.com/files/file/516-search-suggestion-%D0%BF%D0%BE%D0%B8%D1%81%D0%BA-%D1%81-%D0%B0%D0%B2%D1%82%D0%BE%D0%B4%D0%BE%D0%BF%D0%BE%D0%BB%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5%D0%BC/ специально внутри категории он не ищет, по умолчанию поиск осуществляется по всей базе но при желании можно переделать
  10. Как вариант разбить этот атрибут на 2: "От" и "До", после чего на странице товара для более удобного отображения собрать в 1. И решиться проблема с поиском.
  11. Почему нельзя в сам запрос добавить attribute_id? Это очень существенно уменьшит выборку + это первичный ключ, уже проиндексированный, поиск по нему быстрый. + можно создать индекс по полю 'text', после чего искать или по точному совпадению или по вхождению в начало: LIKE 'для ЖК%', тогда эти индексы будут использоваться Логичный и очень правильный вариант, удивляюсь почему в самом движке так не сделано. Но для этого нужно очень много кода переписать в самом движке, везде, где есть работа с атрибутами + потом поддерживать все это при смене версий движка. А вообще написание своего фильтра это очень трудоемкое занятие. Фильтр это достаточно сложный модуль с сложным кодом. Это только на первый взгляд кажется что это просто и напишется за 2 вечера )) А реально на написание нормального фильтра уйдет десятки часов. Лучше взять какой-то готовый фильтр (есть и бесплатные модули) и переделать его под себя.
  12. дальше нужно смотреть сам модуль фильтра, как он работает, возможно там есть специальная ф-ция которая определяет наличие фильтра для категории. Кстати, у вас ошибка в коде, должно быть (без "s" в fmsettings): <?php foreach ($fmsettings as $fmsetting) {?> <?php if ($fmsetting['layout_id'] == 3 && $fmsetting['status'] == 1) {?> ля ля ля <?php } ?> <?php } ?>
  13. Нужно пройтись по массиву $some_module_settings, так как модулей может быть много, не только 1, foreach ($some_module_settings as $some_module_setting) { if ($some_module_setting['layout_id'] == 3 && $some_module_setting['status'] == 1) { // модуль включен на странице категории, ['layout_id'] == 3 - это страница категории } }
  14. Посмотрите в базе в таблице settings в столбце key как этот модуль пишет свои настройки. Возможно это filter_module Но через $this->config->get('some_module') вы получите все настройки этого модуля. Если вам нужна какая-то одна то вам нужно сначала сделать $some_module_settings = $this->config->get('some_module'); после чего через например print_r($some_module_settings); посмотреть все настройки этого модуля, как они называются. Если вам нужно именно проверить включен ли модуль в каталоге то смотрите на "layout_id" модуля
  15. Есть видео на котором показана демонстрация работы модуля. Если есть вопросы насчет работы - всегда можно спросить у автора.
  16. Зачем покупать у буржуев, если есть аналогичный модуль у нас - Option Image Change - Изменение картинки товара в зависимости от опции и стоит больше чем в 2 раза дешевле и поддержка русскоязычная.
  17. модуль не меняет стандартного отображения опенкарта. картинка будет та, что назначена в каталог-опции
×
×
  • 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.