Ruslan Brest, rb.labtodo.com
Backend web-developer: CodeIgniter, PHP, MySQL, OpenCart, PrestaShop, MaxSite CMS

OpenCart

Opencart (admin): сортировка товаров по колонке с изображениями

14 августа 2013 г. Ruslan Brest Howto » OpenCartОбсудить

Сортировка по колонке с фото пригодится для быстрого перехода к товарам, у которых нет фото.

Делалось на последней версии с гитхаба, но должно быть аналогично для всех версий. Единственное, что может отличаться - tpl файл, т.к. админка в v2.0 существенно переделывалась. Но думаю, не составит труда адаптировать одну строчку под необходимую вам версию.

Далее...

Что нас ждёт в Opencart 2.0

Конца разработке Opencart 2.0 пока ещё не видно, но сейчас уже можно выделить основные нововведения и готовиться к изменениям.

Что нас ждёт в новой версии Опенкарт?

  • HTML5,
  • адаптивный дизайн (Twitter Bootstrap),
  • наведение красоты и использование шрифтов с иконками (Font Awesome) вместо мелкой графики,
  • добавление полей в форму регистрации из админки (не видел, не знаю, о чём речь),
  • а также "встроенный vqmod": новые пункты меню "Extension installer" и "Modifications" в меню расширений.

Также 10 июня было сказано, что Paypal и Amazon заплатили за внесение каких-то новых фишек, но на гитхаб это пока не выложено. Делается какой-то другой компанией и будет объединено позже.

UPD: это оказались:

Далее...

Opencart CE (Community Edition)

Давно я ожидал появления альтернативной версии репозитория Опенкарт с более адекватным ведением дел. Вообще-то думал, что он чуть раньше появится. Но чтобы его объявили прям в "новостях и анонсах" на форуме -- не ожидал. Смело :) Я думал, будет как-то менее заметно и в одном из репо десятка-другого активных разработчиков и комиттеров, разочаровавшихся в политике DK. Респект rph :)

Вообще-то в какой-то момент, когда Qphoria начал бранчи в гитхабе изучать, я поверил, что не всё потеряно. Но потом опять началось, ДК ничуть не изменился. Workflow в гитхабе также остался прежним.

В общем, на днях (21 июня) пара квалифицированных разработчиков (rph /opencarthelp/ и AddCreative как минимум) объявили о рождении "community edition" форка (ответвления от основного репозитория Opencart). Судя по списку планируемых вопросов -- с этими людьми "кашу сварить" можно. И скорее даже нужно. Очень надеюсь, что там дело пойдёт намного лучше по части совместной разработки.

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

Чтобы было чуть более понятно, надо пояснить, как сейчас ведутся дела.

Далее...

Что даёт установка минимальной цены расширений продавцам и покупателям

На опенкартфоруме возникла тема-предложение по оптимизации процесса продаж в каталоге шаблонов, инициированная продавцами шаблонов. Цель благая, но основой предложения является:

  • установка нижней планки (минимальной цены шаблонов);
  • и кол-во продаж за определенный период.

Ни слова про рейтинг почему-то, хотя в теме сразу же появились логичные напоминания об этом. По крайней мере, на этот счёт можно быть спокойным.

Топикстартер выразил уверенность, что эти меры заставят "некачественных" продавцов подтягивать уровень шаблонов.

Меня это рассмешило. И вот почему.

Далее...

Opencart: вывод производителей в своём порядке вместо алфавитного

Для тех, кто хочет выводить страницу производителей (брендов) в своём порядке, а не в алфавитном, Сегодняшний рецепт. Надо изменить файл catalog/controller/product/manufacturer.php.

Далее...

Opencart: иконки в breadcrumbs

Как изменить символ "»" на собственную иконку?

Opencart 2.0

Для этого в файле catalog/view/theme/default/stylesheet/stylesheet.css

надо найти

.breadcrumb li + li:before {
	content: '»';
	padding: 0px 5px 0px 5px;
}

и заменить на что-то наподобие:

.breadcrumb li + li:before {
	content: url('../image/success.png');
	padding: 0px 5px 0px 5px;
}

Второй способ - использовать специальные шрифты с иконками.

Opencart 1.5.x (возможно, и 1.4.x тоже)

Для более ранних версий Opencart (вплоть до 1.5.5.1) надо изменить текст `text_separator` в языковых файлах:

$_['text_separator'] = '<img src="image/flags/ua.png" height="42" width="42"/>';

Искать в `catalog/language/english/english.php`, `catalog/language/russian/russian.php` и т.п.

Opencart: генераторы sitemap.xml (Google Sitemap) и YML (Yandex.Market) для большого количества товаров

Решения, рассчитанные на большое количество товаров:

Сам я ни одно из этих решений не проверял на больших количествах товаров. Воспринимайте как список для справки, изучения и обсуждения.

Главные проблемы стандартного генератора sitemap.xml, в котором по традиции всё делается в лоб и без оптимизаций:

Далее...

Бекап Opencart сайта - checklist

23 апреля 2013 г. Ruslan Brest Howto » E-commerce » OpenCartОбсудить

Сайт обычно располагается в папке `public_html`.

  1. Папки `admin`, `catalog`, `download`, `system`, а также файлы `.htaccess`, `config.php`, `humans.txt`, `robots.txt`, `yandex_*.txt` -- это всё движок магазина. Те, кто использует VQmod, должны добавить к списку ещё папку `vqmod`.
    • файлы с точкой впереди - системные/скрытые. Поэтому их может быть не видно и надо включить в настройках FTP-клиента опцию их показа. `.htaccess` очень важен для работы сайта. Если у него есть расширение (.TXT или любое другое) - значит он сервером не используется (отключен). В этом случае не будут работать SEO URL;
    • в указанных папках есть 2 "лишние", их нежелательно включать в бекап: `system/cache`, `system/logs`. Это кешированные файлы и лог ошибок. Они нужны для работы и диагностики, но хранить их - смысла мало. Особенно если они большого объёма;
    • если вы пользуетесь VQmod-ом: папку `vqmod/logs` желательно исключить из бекапа. Папку 'vqmod/vqcache' можно бекапить, а можно и нет. Самое ценное здесь - содержимое `vqmod/xml`. Остальное несложно восстановить.
  2. Вторая важная часть сайта - картинки/фото.
  3. Они находятся в папке `image` (`public_html/image`). Оригиналы картинок - в папке `image/data`. Это самое ценное. Остальное несложно восстановить.

    • Что здесь бекапить: всю папку `image` за исключением `image/cache`
    • `image/cache` очень объемная. Эти файлы генерируются сайтом на лету при просмотре сайта. Ссылки на них могут использоваться в `sitemap.xml`.

  4. Третья критически важная часть сайта - база данных магазина. Её через FTP не скопируешь. Её надо бекапить либо Adminer-ом, либо phpMyAdmin (обычно есть в панели управления хостинга).

SafePatch -- альтернатива vQmod

Идея патчей и vQmod совершенно одинаковая. И в одном, и другом случае файл с изменениями накладывается на некую известную основу. И если эта основа изменилась -- и патч, и vQmod могут "поломаться": не смогут внести изменения, если не найдут точного соответствия, необходимого для внесения правок.

Поэтому те, кто наивно полагает, что vQmod спасёт их от всех бед и является волшебной таблеткой и позволит без проблем обновлять версии и ни о чем не беспокоиться - сильно заблуждаются.

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

К тому же vQmod - рантайм решение. То есть работает при каждом запросе к серверу. Конечно, многое решается кешированием. Но я из тех разработчиков, которые не совсем понимают, зачем нужно вводить лишнее звено, если то же самое делается без дополнительных костылей (а технологии внесения и убирания этих изменений существуют уже лет 40 и протестированы не одним поколением программистов -- я говорю об утилитах `patch` и `diff`).

Причём убрать изменения так же просто, как и наложить патч.

Применить изменения к коду: git apply fix-some-problem.diff или patch -p1 fix.diff

Убрать изменения: git apply -R fix-some-problem.diff или patch -R fix.diff

И где здесь сложная часть? Это ничуть не сложнее удаления VQmod файла. При использовании vQmod надо управляться с набором XML файлов. При использовании стандартного подхода -- с набором DIFF файлов. Невелика разница. А преимущества серьёзные.

И вот совсем недавно, в поисках PHP-реализации утилиты `patch` или автоматического конвертера DIFF в vQmod XML, я наткнулся на замечательный вариант: утилиту SafePatch.

http://code.google.com/p/safepatch/

UPD: в связи с закрытием Google Code проект переместился на Github: progerxp/safepatch.

Если кратко и своими словами -- это "менеджер пакетов" (расширений). Но в отличие от vQmod (runtime) он эти изменения вносит непосредственно в исходный код (как и `patch`). При этом понимает формат VQmod и может использовать эти файлы тоже.

Так что те, кто интересуется вопросом - встречайте. По-моему, хороший инструмент. Это не совсем то, что я искал, но отличное готовое решение проблемы.

See also:

Opencart 1.5.5 (admin): показ SEO Keyword в списке категорий

5 марта 2013 г. Ruslan Brest Howto » OpenCart6

Добавляется колонка на странице категорий в админ-части:

Для предыдущий версий - см. список связанных статей внизу.

Далее...