Вход на сайт

Отличия OCMOD от VQMOD модификаций Opencart

В этой статье я раскажу вам как адаптировать модули VQMOD под Opencart 2, то есть переделать их в формат новой системы модификаций OCMOD. Отличий немного, поэтому вы запросто сможете переделать любой vqmod в ocmod файл. OCMOD установщик намного удобнее своего младшего брата VQMOD, он позволяет управлять модификациями из админки Opencart 2 сайта.

<operation>
    error = 'skip'  - пропускает текущую операцию если позиция не найдена
    error = 'abort' - останавливает выполнение мода если позиция не найдена
            В обоих случаях событие записывается в лог модификаторов
</operation>
<search>
    trim  - (true|flase) $search = trim($search)
    index - позволяет задать число искомой строки для поиска. Аналогично index в vqmod, за исключением: в vqmod - index="2" вернет 2-е совпадение в файле, в ocmod index="2" вернет 3-е совпадение в файле. Можно перечислить через запятую нужные варианты: index="1,3,7". (не используй без нужды, в Opencart v2.0.0.1b поведение не прогнозируемое). Есть нюанс: в Opencart v2.0.0.1b если index="0" - будет возвращать все совпадения из <search></search>. Если нужно найти только первое совпадение - используй index="0,40", где 40 - несуществующее к-во совпадений.
</search
<add>
    trim     - (true|flase) $add = trim($add)
    position - (before|after|replace) Поведение аналогично position в vqmod. Направление вставки текста (before|after) относительно искомой строки  или замены текста в случае repalce.
    offset   - аналогично offset в vqmod. Смещение в строках относительно position. Как и в vqmod: 0 - первая строка
</add>


Отличия файлов OCMOD от VQMOD и адаптация

1. Атрибуты:
  • вместо id теперь атрибут code, это обязательный атрибут OCMOD, он должен быть уникальным
  • vqmver - не нужен 
  • name - название модификации
  • version - версия модификации
  • author - разработчик модификации
  • link - сайт разработчика модуля
2. Остались операторы replace, before, after, regex, offset, limit.  Отличается и работа offset. Отсутствуют ignoreif, log.

3. Позиция указывается не в элементе search
<search position="replace">
а в элементе add
<add position="replace">

4. Название файла указывается не через свойство name
<file name="catalog/controller/product/search.php">
а через path
<file path="catalog/controller/product/search.php">

Модули Opencart 2 могут состоять из одного файла (должен иметь расширение .ocmod.xml) или нескольких, упакованных в архив с расширением .ocmod.zip. В архиве могут находиться XML, SQL и PHP файлы:
upload/*
install.sql
install.php
install.xml
Все файлы из папки `upload` будут скопированы в папку, куда установлен Opencart.
В install.sql можно добавить все необходимые SQL-запросы (create, drop, insert, update), которые должны быть исполнены при установке модуля. Каждый запрос должен заканчиваться символом ;.
Если модуль требует каких-то дополнительных действий для установки, PHP код надо разместить в файле `install.php`.

Пример оформления файла OCMOD:

<?xml version="1.0" encoding="utf-8"?>
<modification>
    <name>Modification Default</name>
    <version>1.0</version>
    <author>OpenCart Ltd</author>
    <link>http://www.opencart.com</link>
    <file path="catalog/controller/common/home.php">
        <operation>
            <search trim="true|false"><![CDATA[
            $data['column_left'] = $this->load->controller('common/column_left');
            ]]></search>
            <add position="Replace|Before|After" trim="true|false" offset="2"><![CDATA[
            test123
            ]]></add>
        </operation>
    </file>  
</modification>
Дата публикации:

Популярные модули Opencart 2
Модуль Купить в один клик Opencart 2

Модуль Купить в один клик Opencart 2

Модуль оформления заказа в один клик для Opencart 2.x - это быстрое оформление заказа в один клик в ..

Всего 199 руб.

Модуль Мега-меню Opencart 2

Модуль Мега-меню Opencart 2

Модуль Мега-меню Opencart 2 - дополнение для создания меню. Быстрая установка всего в несколько кли..

Всего 150 руб.

Модуль Вход через соц.сети Opencart 2

Модуль Вход через соц.сети Opencart 2

Модуль Вход через социальные сети Opencart 2 - это модуль авторизации клиентов через популярные соцс..

Всего 199 руб.

Модуль Всплывающая корзина Opencart 2

Модуль Всплывающая корзина Opencart 2

Модуль Всплывающая корзина Opencart 2 - это широкофункциональный модуль, возможности которого тяжело..

Всего 249 руб.

Модуль Фотогалерея Opencart 2.x

Модуль Фотогалерея Opencart 2.x

Модуль Фотогалерея Opencart 2.x - поможет создавать вам свои фотоальбомы и публиковать их на сайтеЭт..

Всего 249 руб.

Модуль Менеджер заказов Opencart 2

Модуль Менеджер заказов Opencart 2

Модуль Менеджер заказов Opencart 2 - модуль для управления заказами из админки. Модуль позволит..

Всего 249 руб.

Счет на оплату. Накладная и фактура для Opencart 2.x

Счет на оплату. Накладная и фактура для Opencart 2.x

Это адаптированная версия модуля "SOFORP Счет фактура и Товарная накладная" для Opencart 2, расширен..

Всего 249 руб.

Модуль Import YML Opencart 2

Модуль Import YML Opencart 2

Модуль Import YML Opencart 2 - для импорта yml-файла с товарами в Ваш интернет-магазин. Импорт ..

Всего 199 руб.

Рекомендуем