Как убрать дубли страницы в карте товара / рекомендуемых / новых товарах opencart

В общем столкнулся с проблемой, которая вредит seo, хлебным крошкам да и вообще смотрится не красиво. Нашел один способ в интернете, я его опишу но с корректировкой, так как в способе который я нашел, баг со скобками, код не очень чистый. Данный способ проверен и работает на opencart 1.5.6.1

И так:
Товар может быть доступен по следующим адресам:
сайт.ua/canon 70D — [товар открывается с главной страницы]
сайт.ua/зеркальные камеры/canon 70D — [товар открывается с категории]
сайт.ua/зеркальные камеры/royal-forest/canon 70D — [товар открывается со страницы производителя]
ну и соответственно товар открывается со всех модулей, где он выводится: Хиты продаж, Рекомендуемые, Последние, Акции и т.д.
кроме того, ссылки на товар формируются в блоке «Рекомендуемые» на странице другого товара; на странице с результатами поиска; на странице сравнения товаров


Читать дальше

Как убрать index.php?route=common/home с главной страницы

Многие задаются вопросом «как убрать index.php?route=common/home». Я столкнулся с этой проблемой в версии opencart 1.5.6

Все достаточно просто.


Читать дальше

Кактус по имени opencart топик-ссылка

Каждый раз когда я нахожу очередной баг, я снова и снова удивляюсь почему я до сих пор не слез с опенкарта. Причем баги настолько глупые, что я не понимаю почему сам по себе опен приобрел такую безумную популярность. И пока удивляюсь, продолжаю снова и снова жевать этот кактус, как легендарные мыши. (понравилось)

OpenCart, Simple и поле для даты

Во время рабочего процесса неожиданно возникла задача добавить покупателям поле «Дата рождения», ввод данных нужно было реализовать не текстовым полем, а выпадающими списками для дня, месяца и года рождения. Возможно, в более поздних версиях Simple уже есть готовое решение, но в моем случае пришлось немножко повозиться. Итак, путь решения следующий, создаем нужное нам поле для пользователя в админке, я все-таки выбрал текстовое, но в принципе тип поля особой роли не играет, после чего начинаем кодить.

Шаг 1.
Лезем в system/library/simple/simple.php, находим функцию, которая выводит поля покупателя и вставляем после:

$html = '';

код приведенный ниже:


Читать дальше

Создание схемы расположения для модуля в OpenCart

Допустим, мы установили новый модуль, например, пусть это будет модуль быстрой регистрации и заказа SimplePay и у нас появилась новая страница с адресом /index.php?route=account/simpleregister, и мы хотим на неё создать особенно расположение модулей. Но, у нас нет её в списке. Что же делать?

Всё очень просто, нужно создать эту страницу в списке дизайнов, используя её путь обращения к контроллеру.

Теперь по порядку:
1. Копируем в буфер обмена путь к контроллеру — account/simpleregister.
2. Идём в меню Система — Дизайн — Схемы
Создание схемы расположения для модуля в OpenCart

Читать дальше

Opencart ( Wordpress ) и баг с возвратом на предыдущую страницу в галерее PrettyPhoto

Периодически при использовании в разработке плагина PrettyPhoto вне зависимости от системы управления, на которой разрабатывается сайт, возникает следующая проблема: после просмотра изображений в галерее для возврата на предыдущую страницу приходится несколько раз нажимать кнопку назад.

Я столкнулся с этой проблемой на сайтах, которые базировались на WordPress и на OpenCart, но после непродолжительных поисках понял, что проблема возникает на MaxyStore, что позволило при поиске решения абстрагироваться от конкретной системы управления(CMS), и обратить внимание на сам плагин PrettyPhoto.

Думаю, любой разработчик замечал, что при использования плагина PrettyPhoto в адресной строке к url сайта добавляется что-то типа: #prettyPhoto[25c784814d1463629681469d839f605d]. Вот в этой добавочной информации к url сайта и кроется весь корень наших проблем, следовательно, для решения задачи нам нужно убрать из адресной строки лишнюю информацию от PrettyPhoto. Спасибо разработчикам они об этом позаботились, отключается вся эта абракадабра очень просто, нужно просто присвоить параметру deeplinking значение false. Ниже привожу пример:
$("a[rel^='prettyPhoto']").prettyPhoto({deeplinking: false});
  • +1
  • 10 сентября 2013, 12:02
  • Maugli

Знаки вопросов (?) в письмах средствами PHP. Что делать?

При доведении до ума одного проекта, в ядре которого лежит OpenCartbigart.com.ua, столкнулся с проблемкой. Как выяснилось, при отправке писем клиенту, некоторые строчки разрываются и в разрыв вставляется знак вопроса (?).

Долго ломал себе голову, пока не посмотрел исходник письма. Письма генерируются в кодировке UTF-8. в формате HTML. Так вот, оказалось, что после достижения определённой длинны строки в теле письма, она попросту переносилась на новую, создавая при этом UTF-8 разрыв. Естественно ссылки и изображения «бьются».

Как вылечить?
Очень просто! Нужно вставлять в строки перевод каретки (\n). Это, конечно, должен знать каждый «школьник», но тем не менее)

Пример:
$html = '<a href="#link">Link text</a>' . "\n";

Интеграция навигационного меню WordPress в OpenCart.

Собственно сама задача: имеется связка WordPress и OpenCart, необходимо навигацонное меню из WordPress подключить к OpenCart. В принципе задача не такая уж и сложная, если разобраться в структуре хранения данных в WordPress.

Читать дальше

Ограничение количества товаров в списке сравнений.

Неожиданно столкнулся с тем, что Opencart позволяет добавить в список сравнений только 4 товара. Для проекта, над которым я работаю, этого оказалось маловато, значит нужно искать решение. Как всегда решение оказалось не таким уж и сложным. Итак, находим контроллер модуля сравнений, он лежит тут: /catalog/controller/product/compare.php. В файле ищем следующую строку:
if (count($this->session->data['compare']) >= 4)

и меняем 4 на нужное вам количество.
Всем спасибо за внимание.

Меняем вывод товара по умолчанию, или сетка вместо списка.

Я думаю, что каждый, кто настраивал магазин на OpenCart, сталкивался с тем, что товары в категориях выводятся списком, и, несмотря на то, что есть второй вариант – сетка, который в большинстве случаев выглядит более эстетично, в админ части OpenCart сменить схему вывода просто невозможно. Но, мы ведь трудностей не боимся, тем более, что, несмотря на то, что нельзя, нам очень хочется сменить схему вывода товаров по умолчанию, значит придется чуть-чуть переписать код.


Читать дальше