Вход на сайт

Регистрация на сайте автоматическая при оформлении первого заказа

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


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

Параметры операций в модификациях OCMOD:

<file path="catalog/controller/module/{latest,featured}.php">
   path - адрес файла или файлов для модификации. Если нужно перечислить несколько файлов - заключаем их названия в фигурные скобки и разделяем запятой. Если нужно модифицировать все файлы в каталоге или файлы во всех каталогах используйте звездочку: path="catalog/view/theme/*/template/common/header.tpl"

<operation error="skip|abort">
   error = 'skip'  - пропускает текущую операцию если позиция не найдена
    error = 'abort' - останавливает выполнение мода если позиция не найдена
            В обоих случаях событие записывается в лог модификаторов

<search trim="true|flase" index="0|1|2...">

   trim  - (true|flase) - игнорирование пробелов в строке
    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 - несуществующее к-во совпадений.

<add position="before|after|replace" trim="true|flase" offset="0|1|2..">

   trim     - (true|flase) $add = trim($add)
    position - (before|after|replace) Поведение аналогично position в vqmod. Направление вставки текста (before|after) относительно искомой строки  или замены текста в случае repalce.
    offset   - аналогично offset в vqmod. Смещение в строках относительно position. Как и в vqmod: 0 - первая строка

Отличия файлов 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">

Адаптация VQMOD на OCMOD

Модули Opencart 2 могут состоять из одного файла (должен иметь расширение .ocmod.xml) или нескольких, упакованных в архив с расширением .ocmod.zip. В архиве могут находиться XML, SQL и PHP файлы:
upload/*
install.sql
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> <code>modification-unic-code</code>
    <version>1.0</version>
    <author>Opencart2x Site</author>
    <link>https://opencart2x.ru</link>
    <file path="catalog/controller/common/home.php">
        <operation>
            <search trim="true"><![CDATA[
            $data['column_left'] = $this->load->controller('common/column_left');
            ]]></search>
            <add position="after"><![CDATA[
            $data['test'] = 'test123';
            ]]></add>
        </operation>
    </file>  
</modification>
Дата публикации:
Популярные модули Opencart 2
Модуль Заказ в 1 клик Opencart 2

Модуль Заказ в 1 клик Opencart 2

Модуль Быстрый заказ в 1 клик Opencart2 - очень удобное дополнение для вашего магазина.Позволяет упр..

Всего 239 руб.

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

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

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

Всего 278 руб.

Модуль Import YML Opencart 2

Модуль Import YML Opencart 2

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

Всего 239 руб.

Модуль Экспорт YML Opencart 2

Модуль Экспорт YML Opencart 2

Модуль экспорта товаров на площадку Яндекс.Маркет, Турбо-страницы и другие сервисы, которые принимаю..

Всего 319 руб.

Модуль Горизонтальное мега-меню Opencart 2.x

Модуль Горизонтальное мега-меню Opencart 2.x

Модуль для формирования многоуровневого меню на основе категорий, производителей, товаров, страниц, ..

Всего 239 руб.

Модуль Вертикальное мегаменю для Opencart 2.x

Модуль Вертикальное мегаменю для Opencart 2.x

Модуль для создания вертикального мега-меню в колонке на Opencart 2.x. Очень многофункциональное доп..

Всего 239 руб.

Модуль Opencart Blog для Opencart 2.x

Модуль Opencart Blog для Opencart 2.x

Большим недостатком системы Opencart 2.x является отсутствие нормального блога записей. Ведь почти к..

Всего 319 руб.

Модуль Стикеры на товары для Opencart 2

Модуль Стикеры на товары для Opencart 2

Модуль для прикрепления стикетов к товарам на Opencart 2. Стикеры - это бирки, ленты, штамы, звездоч..

Всего 278 руб.

Слайдер Revolution для Opencart 2.0 - 2.3

Слайдер Revolution для Opencart 2.0 - 2.3

Слайдер №1 для Opencart 2 - это Revolution Slider. Многофукциональный модуль для слайдшоу позволяет ..

Всего 319 руб.

Модуль Скидки для групп покупателей Opencart 2.x

Модуль Скидки для групп покупателей Opencart 2.x

Модуль Скидки для групп покупателей или Total Customer Group Discount для Opencart 2.x позволяет зад..

Всего 199 руб.

Модуль Отзывы о товарах Opencart 2

Модуль Отзывы о товарах Opencart 2

Модуль Отзывы о товарах на отдельной странице и в позиции на сайте для Opencart 2.0.Удобный модуль д..

Всего 159 руб.

Модуль Мультизагрузка картинок товара на Opencart 2

Модуль Мультизагрузка картинок товара на Opencart 2

Модуль позволяет загружать и выбирать одновременно несколько картинок для товара. По умолчанию в O..

Всего 199 руб.

Рекомендуем

×
Напишите нам, мы онлайн!