С 9:00 до 21:00 Без выходных

task_manager.ocmod.xml

Отлично, давай сделаем файл модификаций (OCMOD) для твоего модуля "Менеджер задач".
Файл модификаций для OpenCart — это .xml файл, который указывает системе, какие изменения вносить в существующие файлы OpenCart без прямого их редактирования.

Я создам рабочую базовую структуру для файла task_manager.ocmod.xml.


Содержимое файла task_manager.ocmod.xml

<?xml version="1.0" encoding="utf-8"?>
<modification>
  <name>Task Manager</name>
  <code>task_manager</code>
  <version>1.0</version>
  <author>Твой автор</author>
  <link>https://yourwebsite.com</link>

  <!-- Добавляем ссылку в меню админки -->
  <file path="admin/controller/common/column_left.php">
    <operation>
      <search><![CDATA[
        if ($this->user->hasPermission('access', 'marketplace/extension')) {
      ]]></search>
      <add position="after"><![CDATA[
        if ($this->user->hasPermission('access', 'extension/task_manager')) {
            $this->load->language('extension/task_manager');
            $task_manager = [
                'name' => $this->language->get('heading_title'),
                'href' => $this->url->link('extension/task_manager', 'user_token=' . $this->session->data['user_token'], true),
                'children' => []
            ];
            $data['menus'][] = $task_manager;
        }
      ]]></add>
    </operation>
  </file>

  <!-- Подключение скриптов и стилей в админке -->
  <file path="admin/view/template/common/header.twig">
    <operation>
      <search><![CDATA[
        </head>
      ]]></search>
      <add position="before"><![CDATA[
        {% if route and route contains 'extension/task_manager' %}
          <link href="catalog/view/theme/default/stylesheet/task_manager_admin.css" rel="stylesheet" type="text/css" />
          <script src="catalog/view/javascript/task_manager_admin.js"></script>
        {% endif %}
      ]]></add>
    </operation>
  </file>

  <!-- Подключение скриптов и стилей на клиентской части -->
  <file path="catalog/view/theme/default/template/common/header.twig">
    <operation>
      <search><![CDATA[
        </head>
      ]]></search>
      <add position="before"><![CDATA[
        {% if route and route contains 'extension/task_manager' %}
          <link href="catalog/view/theme/default/stylesheet/task_manager.css" rel="stylesheet" type="text/css" />
          <script src="catalog/view/javascript/task_manager.js"></script>
        {% endif %}
      ]]></add>
    </operation>
  </file>

</modification>

Что делает этот файл:

  1. Добавляет пункт меню "Task Manager" в админ-панели в боковом меню слева (admin/controller/common/column_left.php).

  2. Подключает нужные стили и скрипты для страниц модуля в админке и на витрине через header.twig.

  3. Все сделано корректно и безопасно — изменения применяются через систему модификаций OCMOD.


Как назвать файл?

Например:

task_manager.ocmod.xml

Как установить?

  1. Перейти в OpenCartДополненияУстановка дополнений → загрузить файл task_manager.ocmod.xml.

  2. После установки не забудь зайти в Модификации и нажать Обновить (синяя кнопка справа сверху).


Хочешь, я ещё сразу подготовлю отдельный архив .ocmod.zip, чтобы его можно было сразу загружать в OpenCart через установщик дополнений?
(могу сразу сделать его готовым для реальной загрузки)