Ответы пользователя по тегу OpenCart
  • Подойдет ли модуль под OpenCart 2.3 для ocStore 2.3?

    arutyunov
    @arutyunov
    Mooza.ru — Делаем сайты
    Купите и проверьте. Не подойдёт — верните деньги. Адекватные разработчики модулей обычно позволяют так сделать. Но заранее уточните политики возврата. Я иногда натыкался на тех, кто отказывался возвращать.

    В целом заработать должно, отличий обычно не очень много между ocstore и opencart.
    Ответ написан
    Комментировать
  • Как посадить дизайн сайта на opencart?

    arutyunov
    @arutyunov
    Mooza.ru — Делаем сайты
    У вас есть два пути:
    1. Допилить дизайн так, чтобы его было просто «натянуть» на Опенкарт — для этого возьмите стандартную сборку Опенкарт с темой по-умолчанию, попользуйтесь ей, дайте дизайнеру, распишите список того, что нужно доделать, дорисуйте, верстайте и интегрируйте (копируйте дефолтную тему, меняйте вёрстку на свою).

    2. (более правильный) Сверстать дизайн и после этого допилить Опенкарт так, чтобы он решал задачи именно тем путём, который сделал дизайнер. Этот вариант сложнее, потребует знания Опенкарт.

    Вместо Опенкарта можно подставить любое название ЦМС. Главное помните, что вас дизайн должен решать бизнес-задачу, а программа должна под него подстраиваться. Если вы дизайн меняете под программу, то весь ваш дизайн — это просто красивые картинки, а не «анализ поведения клиента, удобство и вот это вот всё».
    Ответ написан
    Комментировать
  • Как использовать переменную с одного контроллера в другом в opencart?

    arutyunov
    @arutyunov
    Mooza.ru — Делаем сайты
    А что именно делает эта переменная?

    Используйте Registry для передачи переменных/объектов между классами.

    У вас скорее всего неверно логика работы построена, потому что это довольно странная задача.
    Опишите вашу изначальную задачу.
    Ответ написан
  • Как ускорить работу OpenCart v. 2.2.0.0?

    arutyunov
    @arutyunov
    Mooza.ru — Делаем сайты
    Как вы определили, что он работает медленно?

    Замеряли скорость работы? Профилирование? Медленно отрабатывает сервер или долго грузятся ресурсы типа js/css?

    Какие расширения ставили? Готовые темы? А их код смотрели? Без них сайт тестировали? Разница есть?

    Вы не предоставили никакой информации.
    Ответ написан
  • [Opencart] Почему не приходит почта?

    arutyunov
    @arutyunov
    Mooza.ru — Делаем сайты
    Попробуйте настроить через SMTP.

    Письма в спам не попадают?

    Функция mail() на хостинге работает?
    Ответ написан
    Комментировать
  • Почему тормозит OpenCart после переноса на новый хостинг?

    arutyunov
    @arutyunov
    Mooza.ru — Делаем сайты
    Посмотрите opencart отладчик. Он позволит посмотреть, сколько запросов выполняется при загрузке страницы, а также сколько времени выполняется запрос.

    У нас на сервере были проблемы с нагрузкой на БД. Через профилирование удалось найти тяжелые запросы и убрать их, нагрузки сразу упали, тормоза исчезли.
    До оптимизации одна страница могла 5-7 секунд грузиться.

    Да, там была недефолтная тема, немалое количество товаров и что-то не так с настройками.
    Помимо запросов что-то еще в настройках или коде меняли. Сходу не вспомню, к сожалению.
    Ответ написан
    Комментировать
  • Как определить страницу категории, подкатегории и товара в Opencart?

    arutyunov
    @arutyunov
    Mooza.ru — Делаем сайты
    Не смотря на то, что у вас включено ЧПУ, в классе request Opencart хранит __path__ в виде 54_57, где 54 id родительской категории, 57 — дочерней.

    У вас ЧПУ от seo-pro?
    Посмотрите класс seo-pro, увидите как там происходит работа с path.

    Второй способ — это проверить, есть ли у текущий категории parent_id. Если есть, то категория дочерняя, если нет, то категория родительская.

    А у страницы товара вообще свой отдельный шаблон.
    Ответ написан
    Комментировать
  • Как правильно составить SQL запрос Opencart?

    arutyunov
    @arutyunov
    Mooza.ru — Делаем сайты
    Используй вложенные запросы или JOIN'ы.

    Сначала напиши "голые" запросы. Например, в phpmyadmin. Затем перенеси эти запросы в код, заменив данные на переменные.

    Если писать сложные запросы не твой конек, а функционал этот будет использоваться редко, то просто сделай 1-2 SELECT * для таблиц, в которых лежат points и price, а потом в коде уже объедини 3 массива: свои данные, поинты и прайс.
    Ответ написан
    Комментировать
  • Как преобразовать текст в html opencart?

    arutyunov
    @arutyunov
    Mooza.ru — Делаем сайты
    Проверяйте контроллер, в Опенкарте все данные эскейпятся, как правило.
    Для преобразования в контроллерах используют html_entity_decode:

    $this->data['description'] = html_entity_decode($product_info['description'], ENT_QUOTES, 'UTF-8');
    Ответ написан
    1 комментарий
  • Как отключить мобильную версию сайта?

    arutyunov
    @arutyunov
    Mooza.ru — Делаем сайты
    Проверяйте - скорее всего в php коде идет определение браузера и устройства пользователя и в соответствии с этим отдается десктопная или мобильная версия.

    Я с таким на опенкарт сталкивался, но шаблон был покупной. Я просто закомментировал ту проверку, чтобы всегда грузилась одна и та же версия.
    Ответ написан
    2 комментария
  • Можно ли отправить письмо на почту с локального сервера?

    arutyunov
    @arutyunov
    Mooza.ru — Делаем сайты
    А что на локальном сервере установлено?
    Например, в денвер или openserver вся почта сохраняется на диске и никуда не уходит.
    Ответ написан
    Комментировать
  • Как бы Вы организовали синхронизацию внешней базы данных с OpenCart?

    arutyunov
    @arutyunov
    Mooza.ru — Делаем сайты
    Зависит от количества товаров. Если их не очень много, то просто кроном можно обновлять.
    Если товаров много, то надо искать другие пути - например, обновлять по частям.

    Как часто в приложении меняются данные, которые надо на сайт выгружать?
    Ну и т.к. у Опенкарта нет нормального api, то надо будет написать некоторую прослойку, которая будет искать/обновлять/добавлять товары. Модели там есть, конечно, но мне было крайне неудобно с ними работать при написании модуля для импорта товаров - слишком неудобно подавать туда данные.
    Ответ написан
    2 комментария
  • Калькулятор стоимости на Opencart — как передать цену и параметры в корзину?

    arutyunov
    @arutyunov
    Mooza.ru — Делаем сайты
    Я бы использовал для этого опции товара.
    Опции позволяют добавлять textarea (для текстового описания) и какое-нибудь поле для итоговой цены (например, input[type=text]). В корзине скрыть цену товара, вместо нее отобразить значение опции товара (input).
    Ответ написан
    Комментировать
  • Почему не работает галерея изображении в Opencart 1.5.6?

    arutyunov
    @arutyunov
    Mooza.ru — Делаем сайты
    Ну посмотрите консоль, заголовки запроса. Причин может быть огромное количество.
    Галерея это довольно косячная, кстати.
    Ответ написан
    Комментировать
  • Как грамотно вырезать регистрацию в Opencart?

    arutyunov
    @arutyunov
    Mooza.ru — Делаем сайты
    Самое простое - удалить контроллеры или экшены, отвечающие за регистрацию. В таком случае, при прямом обращении будет ошибка 404.

    Можно в контроллерах редиректы прописать или что-то еще.

    Что касается сайтмэпа, то надо смотреть как он строится. Можно в случае чего поправить алгоритм генерации карты сайта.
    Ответ написан
    Комментировать
  • Opencart. Как создать 2 дополнительных поля в создании опции. (описание и class css)?

    arutyunov
    @arutyunov
    Mooza.ru — Делаем сайты
    С таким вопросом вам на фриланс, а не сюда
    Ответ написан
    Комментировать
  • OpenCart - как передать цены с карточки товара при добавлении в корзину?

    arutyunov
    @arutyunov
    Mooza.ru — Делаем сайты
    checkout/cart.php - это контроллер, который принимает входные данные из формы. Далее, идет запрос в библиотеку library/cart.php, оттуда уже информация пишется в сессию.

    Соответственно, если у вас несколько цен, которые зависят от количества товара, то вам надо либо в базе хранить все цены, либо иметь алгоритм, который позволит определить цену, в зависимости от конкретного количества товара (1 товар - 100% цены, более 5 товаров - 90% цены и т.д.). В таком случае достаточно получать количество товара на клиенте и на сервере и через выработанный алгоритм определять цену (вычисляем нужную цену от 100% цены, которая указана в админке).

    Соответственно, количество товара в виде переменной $quantity передается в контроллер, а цена товара (или несколько) - тянутся из базы через модель товара, которая подгружается в контроллере.
    Ответ написан
    2 комментария
  • Порекомендуйте движок для интернет-магазина

    arutyunov
    @arutyunov
    Mooza.ru — Делаем сайты
    Мне очень Opencart нравится в плане кода. Очень низкий порог вхождения (если есть понимание MVC), легко пишутся модули и плагины под него. И набор уже готовых решений довольно большой.
    Есть проблема с seo (конкретно - дублирование URL), но она решаема грамотной установкой нужных плагинов и их настройкой (обычно достаточно лишь seo pro - включает чпу и убирает дублирование url).

    О Joomla вообще как о CMS у меня плохие воспоминания и впечатления.
    С Prestashop не приходилось работать.
    Ответ написан
    1 комментарий