Поиск…


Каталог Структура модуля

На данный момент я думаю, что модуль каталога содержит почти все, что вы можете добавить в модуль.

  • Api - Содержит сервисные контракты. Набор интерфейсов, которые не следует изменять, если незначительная версия не изменяется. Не обязательно для настраиваемого модуля, но с хорошими для коммерческих расширений.
    • Интерфейсы данных - данных. Каждый интерфейс должен иметь модель, которая его реализует (пример: интерфейс для модели продукта)
    • ProductRepositoryInterface.php - интерфейсы для репозиториев (также должны иметь реализацию)
    • ... - другие, как указано выше
  • Блок- блоки, используемые в макете для интерфейса и бэкэнд
    • Adminhtml - блоки, используемые для бэкэнд
    • Категория - блоки, связанные с фронтом. Может быть вложен в столько папок, сколько вам нужно, но не обязательно
    • ... - то же, что и выше
  • Консоль - папка, содержащая команды cli
  • Контроллер - содержит интерфейсные и бэкэнд-контроллеры
    • Adminhtml - серверные контроллеры
    • Категория - интерфейсные контроллеры. Может быть вложен в столько папок, сколько вам нужно, но не обязательно
    • ... - то же, что и выше.
  • Cron - код, который должен выполняться через cron
  • etc - содержит файлы конфигурации модуля xml
    • frontend - содержит файлы конфигурации, загруженные только на интерфейсе
    • adminhtml - содержит файлы конфигурации, загружаемые только на бэкэнд
    • webapi_rest - содержит файлы конфигурации, загруженные только для остальных api
    • webapi_soapt - содержит файлы конфигурации, загружаемые только для SOAP api
    • acl.xml - определения ACL
    • catalog_attributes.xml - атрибуты по умолчанию для объектов каталога.
    • catalog_attributes.xsd - схема проверки для файла выше.
    • config.xml - значения по умолчанию для настроек конфигурации
    • crontab.xml - планирование заданий cron
    • di.xml - предпочтения для инъекций зависимостей. (также может находиться в adminhtml, frontend, webapi_ *)
    • events.xml - объявление наблюдателей для событий (также может находиться в adminhtml, frontend)
    • indexer.xml - настройки для разных индексов, которые необходимо выполнить при изменении данных
    • module.xml - файл объявления модуля
    • product_ * - связанные с продуктом настройки.
    • webapi.xml - пути декларации webapi.
    • widget.xml - объявления виджетов.
  • Помощник - разные помощники модулей
  • i18n - файлы перевода языка
  • Модель - модели, простые как это. они могут быть вложены в столько папок, сколько вам нравится, но это не обязательно.
  • Наблюдатели - классы наблюдателей событий
  • Плагин - around|before|after плагинов для разных общедоступных методов.
  • Ценообразование - классы, связанные с ценой. Это особый модуль. У вас может быть столько папок, сколько вам нравится, если вы не хотите размещать их в папке с образцами.
  • Установка - установка / обновление связанных файлов (установка обновления схемы и данных)
  • Испытательные испытания
  • Ui - ui связанные классы.
  • view - связанная с html часть. V в MVC.
    • adminhtml - файлы, связанные с администратором
      • layout - xml layouts для adminhtml
      • шаблоны - phtml шаблоны для adminhtml
      • ui_compoenent - ui связанные файлы (декларация)
      • веб- ресурсы (js, изображения)
      • requirejs-config.js - настройка для require.js
    • base - файлы, используемые как для интерфейса, так и для бэкэнд.
      • может иметь такую ​​же структуру подпапки, как adminhtml
    • frontend - файлы, связанные с frontend
      • может иметь такую ​​же структуру подпапки, как adminhtml
  • composer.json - не обязательно, но приятно иметь, если вы распространяете свой модуль
  • registration.php - файл регистрации модуля.
  • Лицензия * .txt, readme.md - вы знаете, что это значит. Они не являются обязательными


Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow