На форуме 9558 тем, 76452 сообщений, 44664 участников
тема · 682 просмотра · 9 ответов

Модуль для OC 4.1.0.0 заменяет стандартную кнопку печати заказа. Стоит ли развивать этот в модуль?

Модули и дополнения
читают: 0 участников и 1 гость
порядок
17 мар 17:15· изменено#1
2026-04-04_15-39-14.pngПЕЧАТЬ ШАБЛОНОВ ДЛЯ СПОСОБОВ ДОСТАВКИ
Модуль: shipping_print_switcher для OpenCart 4.1.0.0




Назначение модуля

Модуль заменяет стандартную кнопку «Распечатать список доставки» на странице заказа на назначенный в настройках модуля формат печатных документов — в зависимости от способа доставки.


Возможности

  • Замена кнопки — стандартная кнопка заменяет стандартную печатную форму на формы назначенные в настройках модуля.
  • Стандартная печать — сохраняется оригинальная функция печати списка доставки
  • Интеграция с доставкой — каждый способ доставки может добавить свою печатную форму
  • Гибкие шаблоны — легко настраиваемые Twig-шаблоны для каждого типа доставки
  • Событийная архитектура — работает через события, не требует правки ядра
  • Многоязычность — поддерживается.


Как это работает

  1. Менеджер открывает страницу заказа
  2. Нажимает на кнопку — и выбирает нужный вариант печати
  3. Открывается стилизованная печатная форма с данными заказа


Функционал для администратора

В настройках модуля — удобная таблица со всеми включёнными способами доставки:

  • Способ доставки — название и код модуля доставки
  • Статус — включён/выключен способ доставки
  • Редактор формы — выбор шаблона для печати
  • Включено — активация печатной формы для этого способа


Для разработчиков модулей доставки

Модуль предоставляет событие для интеграции. Добавьте в метод
install()
вашего модуля доставки:

php
$this->load->model('setting/event');
$this->model_setting_event->addEvent([
'code' => 'your_module_print_link',
'description' => 'Ссылка на печать',
'trigger' => 'admin/view/sale/order_info/get_shipping_print_links',
'action' => 'extension/your_module/other/printswitcher.addPrintLink',
'status' => 1,
'sort_order' => 1
]);


Данные, доступные в шаблоне:

php
$data['order_id']             // Номер заказа
$data['store_name'] // Название магазина
$data['total'] // Сумма заказа
$data['currency_code'] // Валюта

// Данные получателя
$data['shipping']['firstname'] // Имя
$data['shipping']['lastname'] // Фамилия
$data['shipping']['address_1'] // Адрес
$data['shipping']['city'] // Город
$data['shipping']['postcode'] // Индекс
$data['shipping']['method'] // Способ доставки

$data['products'] // Массив товаров



Преимущества

  • Простая установка — через стандартный установщик OpenCart
  • Гибкая настройка — интуитивный интерфейс в админке
  • Целевая печать — свой шаблон для каждого способа доставки
  • Расширяемость — другие модули могут легко интегрироваться
  • Адаптивность — корректное отображение при печати
  • Безопасность — полное соблюдение прав доступа


Системные требования

  • OpenCart 4.1.x.x
  • PHP 8.0 или выше
  • MySQL 5.6+ или MariaDB 10+


Установка

  1. Скачайте архив
    printswitcher.ocmod.zip
  2. Загрузите через Расширения → Установщик
  3. Перейдите в Расширения → Модули → Другие
  4. Нажмите «Установить» рядом с модулем
  5. Настройте шаблоны для способов доставки


Лицензия

MIT — можно использовать в коммерческих проектах, модифицировать и распространять.

Автор

Смаглюк Андрей

Поддержка

По вопросам работы модуля пишите в личные сообщения на форуме или создайте тему в соответствующем разделе.

История версий

  1. 1.0.0 Первая проба
  2. 1.0.1 Косметические изменения, не влияют на функциональность
  3. 1.0.2 Добавлена возможность редактирования шаблонов печатной формы из административной панели. Резервные копии редактируемых шаблонов сохраняются в storage/printswitcher/.
  4. 1.0.3 Добавлена возможность создавать свои шаблоны. Изменено расположение шаблонов этикеток. Файл Readme можно прочитать из модуля (а-ля HELP).


——————————————————————————————
УПРОСТИТЕ РАБОТУ С ДОСТАВКОЙ В ВАШЕМ МАГАЗИНЕ!
——————————————————————————————


17 мар 17:36#3
Ravilr написал(а): ↑в сообщениях не поддерживается маркдаун. это же не ИИ ;)

Ну попросил написать красиво, оно мне написало. :)
19 мар 10:42#5
Ravilr написал(а): ↑надо писать . напиши красиво для поста в xenforo версии 1.5 . используй bb коды отсюда https://forum.opencart-russia.ru/help/bb-codes

Спасибо.. А то из-за основной работы ,только по субботам могу заниматься. !yes!
21 мар 17:20#6
Что нового в обновлении:
  • Редактирование в админке: Добавлена возможность править макеты печатных форм прямо в панели управления.
  • История версий: Включена функция автоматического резервного копирования. При каждом сохранении создаётся инкрементированная копия предыдущего макета.
  • Известная проблема: В данный момент команда работает над стабильностью сохранения кода в редакторе (возможны искажения).

2026-03-21_17-11-03.png )
28 мар 17:23· изменено#7
Что нового в обновлении:
  • Редактирование в админке: Добавлена возможность создавать свои макеты печатных форм прямо в панели управления.
  • История версий: Добавлена возможность создавать свои шаблоны. Изменено расположение шаблонов этикеток. Файл Readme можно прочитать из модуля (а-ля HELP).
  • Известная проблема: В данный момент команда работает над улучшением удобства использования редактора и процессом создания новых макетов. В связи с этим возможны временные визуальные искажения.2026-03-28_17-21-46.png
4 апр 15:50· изменено#8
Из нового функционала только идея вставки блоков для редактора.
Код немного сходил в парикмахерскую и "причесался".
2026-04-04_15-39-14.png
2026-04-04_16-01-56.png
11 апр 14:28#9
Исправлены мелкие ошибки в функциональности редактора. Исправлены переменные для языковых файлов.
18 апр 10:05#10
Модуль протестирован на 4.1.0.3 - работает. . Видимо это финал. Изменять буду только при выпуске новых версий Opencart. Или по просьбе "трудящихся"
сообщения 1–10 из 10
Чтобы ответить, войдите или зарегистрируйтесь.

Похожие темы