Скорость этой страницы TTFB … LCP …

Open Source · Ata

Прокачайте свой плагин WordPress.
Со структурой MVC-S.

ATA помогает разработчикам плагинов WordPress сохранять растущую кодовую базу упорядоченной и удобной в поддержке благодаря паттерну проектирования MVC.

Для разработчиков плагинов WordPress

У всего, своя папка.

ATA даёт каждому плагину одинаковую предсказуемую структуру, поэтому растущая кодовая база остаётся упорядоченной и удобной в поддержке.

ATA Folder STRUCTURE

your-plugin-name/
├── app/
│   ├── apis/               # REST API endpoint classes
│   ├── controllers/        # Controller classes
│   ├── helpers/            # Global helper functions
│   ├── models/             # Data logic (database interaction)
│   │   └── structures/     # Optional: DTOs/data structure classes
│   ├── routes/             # API and custom URL definitions
│   ├── services/           # Business logic layer
│   └── views/              # View files (HTML/PHP templates)
│
├── base/                   # Base classes your app classes extend
├── config/                 # Plugin-wide configuration
├── constants/              # Custom constant definitions
├── inc/                    # Bootstrapping and initialization files
├── vendor/                 # Composer dependencies (includes the core ATA framework)
│
└── your-plugin-name.php    # The main plugin entry file

Ключевые принципы Ata.

Структура по умолчанию

ATA предлагает готовую структуру каталогов, которая логично разделяет части вашего плагина.

Прежде всего, ООП

Фреймворк поощряет писать код в классах, а не в процедурных функциях,, это улучшает переиспользуемость и организацию кода.

Чёткое разделение ответственности

Он реализует вариацию паттерна MVC, чтобы логика, данные и представление оставались в отдельных слоях.

Простая маршрутизация

В ATA есть встроенный роутер, с которым регистрация собственных эндпоинтов REST API или URL становится простой и декларативной.

Ключевые отличия

Что такое MVC-S?

ATA продвигает вариант паттерна Model-View-Controller (MVC), который мы называем MVC-S (Model-View-Controller-Services).

Controller (центральный механизм)

Controller, ядро работы вашего плагина. Он обрабатывает входящие запросы, регистрирует все хуки и фильтры WordPress и управляет потоком приложения. В простых плагинах Controller может сам выполнять всю логику и доступ к данным. В более сложных приложениях его роль меняется, он становится оркестратором: вызывает Service для бизнес-логики или Model для данных, а затем передаёт результат во View для отрисовки.

View (слой представления)

View, это необязательный слой для генерации HTML. Он получает данные от Controller и отрисовывает их. Во View должно быть минимум PHP-логики, только отображение переданных данных.

Model (слой данных)

Единственная задача Model, прямое взаимодействие с базой данных. Внутри класса Model объект базы данных WordPress доступен через $this->db (например, $this->db->get_results(...)). Этот слой необязателен: если плагин не работает с базой данных, он вам не нужен.

Service (слой логики)

Слой Service, это необязательное, но рекомендуемое место для основной бизнес-логики плагина. Когда логика становится слишком сложной для Controller, вынесите её в Service. Так контроллеры остаются тонкими и сосредоточенными на обработке запросов.

Пример плагина

Polylang RestAPI Helper

Плагин polylang-restapi-helper идеальный компактный пример фреймворка ATA.

Как перевести ваш плагин WordPress на ATA MVC

Документация

Как начать использовать ATA в своём плагине, быстро и просто

Ваша история успеха может стать следующей.

Есть вопросы? Мы поможем принять верное решение.