Вход на сайт

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

Отличия 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
Модуль Купить в один клик Opencart 2

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

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

Всего 199 руб.

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

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

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

Всего 199 руб.

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

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

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

Всего 199 руб.

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

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

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

Всего 249 руб.

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

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

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

Всего 249 руб.

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

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

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

Всего 249 руб.

Модуль Import YML Opencart 2

Модуль Import YML Opencart 2

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

Всего 249 руб.

Расширенные отчеты по заказам и продажам для Opencart 2

Расширенные отчеты по заказам и продажам для Opencart 2

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

Всего 249 руб.

Модуль Упрощенный заказ Custom Quick Checkout на Opencart 2.x

Модуль Упрощенный заказ Custom Quick Checkout на Opencart 2.x

Модуль упрощенного заказа Custom Quick Checkout Opencart 2 - по сути модуль заказа на одной странице..

Всего 249 руб.

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

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

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

Всего 249 руб.

Модуль Яндекс.Деньги для Opencart 2

Модуль Яндекс.Деньги для Opencart 2

Модуль оплаты Яндекс Деньги для Opencart 2 - платежный модуль, который позволит принимать платежи с ..

Всего 249 руб.

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

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

Модуль оплаты Webmoney для Opencart 2 предназначен для оплаты товаров через популярную систему ..

Всего 249 руб.

Рекомендуем