OCMOD в OpenCart
Начиная с версии OpenCart 2х и выше, в платформу по умолчанию внедрен инструмент изменения кода ядра OpenCart или прочих расширений без необходимости прямого вмешательства, в отличии от предыдущих версий OpenCart 1х, для которых использовался vQmod (ныне в нём надобность отпала).
Хотя все модули, каналы продвижения товаров и расширения OpenCart должны быть автономными и модульными, в некоторых случаях может потребоваться дополнительная модификация ядра OpenCart или прочих расширений. Изменение основных файлов OpenCart значительно снижает возможность обновления магазина до новых версий и может повлиять на другие модули и расширения. OCMOD предоставляет механизм, с помощью которого модули, требующие модификации ядра OpenCart, могут быть установлены без ущерба для целостности вашей основной системы для обновлений. OCMOD хранит список имен файлов и необходимых изменений в виде одного XML-файла на расширение. Эти изменения затем создаются по мере использования основных файлов, а результирующие файлы сохраняются в виде кэшированных копий, которые выполняются вместо исходного, основного файла PHP, TPL или TWIG.
Отличия OCMOD от vQmod в opencart
1 - Атрибуты OCMOD:
- id вместо атрибута code, **обязательный атрибут OCMOD, должен быть уникальным
- vqmver - не используется
- name - название модификатора
- version - версия модификатора
- author - разработчик модификатора
- link - адрес сайта разработчика расширения
Операторы replace, before, after, regex, offset, limit.
Отличается и работа оператора offset. Отсутствуют ignoreif, log
Позиция указывается не в элементе search
<search position="replace">
а в элементе add
<add position="replace">
Название файла указывается не через свойство name
<file name="catalog/controller/product/product.php">
а через path
<file path="catalog/controller/product/product.php">
Примеры по подробнее смотрите на странице модификаторы OCMOD.
vQmod или OCMOD для OpenCart
Если всё таки вам требуется расширение в виде vQmod, учитывая то, что в новых версиях 2х и выше уже используется его аналог OCMOD, ниже описаны действия для его установки в систему OpenCart. Но мы вам рекомендуем не использовать vQmod и переадаптировать расширение в OCMOD.
Установка vQmod в opencart
Скачать vQmod и инструкции по установке можно здесь: :https://github.com/vqmod/vqmod.
После того, как вы загрузили соответствующий zip-файл vQmod, указанный в ссылке, вам нужно распаковать zip-файл и используя FTP выгрузить папку vQmod в корневой каталог вашего сайта. На скриншоте Filezilla ниже мы видим, что корневой каталог этого магазина находится в public_html/opencart на стороне удаленного сайта. Загрузка папки vQmod сделает папку vqmod видимой в public_html/opencart.
vQmod советует вам установить разрешения на запись для папок vqmod/vqcache, index.php и admin/index.php. В Filezilla вы можете щелкнуть правой кнопкой мыши на файле или папке, выбрать "права доступа к файлам...", и ввести 755 или 777 в поле "числовое значение", чтобы установить его для записи.
Следующим шагом в установке vQmod является посещение страницы установки в вашем магазине. Введите местоположение вашего магазина в браузере, а затем "vqmod/install". Если ваш магазин находится по адресу "www.ваш-домен.com", страница установки vQmod будет расположена по адресу "www.ваш-домен.com/vqmod/install". При правильной установке на странице появится следующий текст: "VQMOD был установлен в вашей системе!" или "VQMOD HAS BEEN INSTALLED ON YOUR SYSTEM!".
vQmod рекомендует загрузить домашнюю страницу, чтобы посмотреть, правильно ли она выглядит и работает после установки. Вам также нужно будет проверить папку vqmod/vqcache, чтобы узнать, есть ли новые файлы vq.