С момента создания WordPress-плагинов (около 10 лет назад) мало что изменилось в процессе их разработки. Есть основной файл плагина с заголовком, за которым идет собственно сам код, выполняющий необходимые задачи. Помимо использования хуков, нет какого то строго стандартизированного способа создания плагинов.
Но это не обязательно является проблемой. Есть много простых плагинов, которые не нуждаются в управляющей структуре. Также многие разработчики могут написать совершенно последовательный процедурный код. Тем не менее, качество кода в большинстве плагинов, как правило, не самое лучшее. Использование исключительно объектно-ориентированной технологии значительно повысит как само качество кода, так и добавит ему гибкость и расширяемость.
WordPress Plugin Boilerplate
Рассмотрим одно из возможных решений – бесплатный плагин WordPress Plugin Boilerplate. Он призван стать отправной точкой для разработки плагинов. Технология использует объектно-ориентированный способ создания WordPress-плагина.
Что из себя представляет WordPress Plugin Boilerplate?
WPPB – обычный WordPress-плагин, имеющий структуру файлов, отвечающую всем официальным стандартам разработки плагинов для WordPress. Это так званый шаблон или заготовка, служащая отправной точкой для создания любого плагина. Он имеет необходимую организацию файлов и папок для правильной разработки. WPPB распространяется совершенно бесплатно, поэтому вы можете использовать его для любого проекта (личного или коммерческого).
Конечно, этот инструмент не для начинающих WordPress-пользователей. Но вам не обязательно быть гуру WordPress. Даже если у вас есть базовое понимание разработки плагинов WordPress, WPPB станет простым инструментом для создания WordPress-модулей.
Как загрузить плагин?
Для этого достаточно зайти на официальный сайт WPPB и нажать кнопку DOWNLOAD NOW. В итоге вы получите архив с файлами, которые ничем не отличаются от файлов любого знакомого вам WordPress-плагина.
Общая структура файлов
В архиве содержится папка plugin-name, в которой хранится собственно сам плагин.
Рассмотрим более детально структуру файлов и папок WPPB.
- plugin-name/admin/. Папка включает в себя файлы CSS, JS, PHP, отвечающие за управление и отображение админ-части плагина через специальный класс class-plugin-name-admin.php.
- plugin-name/includes/. Эта папка является своего рода основой вашего плагина. Он состоит из:
- plugin-name/includes/class-plugin-name.php – основной PHP-класс плагина;
- plugin-name/includes/class-plugin-name-activator.php – функции активации плагина;
- plugin-name/includes/class-plugin-name-deactivator.php – функции деактивации плагина;
- plugin-name/includes/class-plugin-name-i18n.php – функционал интернационализации;
- plugin-name/includes/class-plugin-name-loader.php – действия и фильтры плагина.
- plugin-name/languages/. Эта папка содержит языковые файлы плагина. Файл по умолчанию – plugin-name.pot.
- plugin-name/public/. Включает в себя CSS-, JS-, и PHP-файлы для работы и отображения пользовательской части сайта (class-plugin-name-public.php).
- plugin-name/LICENSE.txt. Текст лицензии GPL-2.
- plugin-name/plugin-name.php. Главный файл плагина (стартовый).
- plugin-name/README.txt. Файл README для вашего плагина.
- plugin-name/uninstall.php. Файл для запуска тех или иных действий при удалении плагина пользователем.
Для каких проектов подходит WordPress Plugin Boilerplate?
WPPB станет идеальным решением для проектов, в которых:
- требуется несколько разработчиков, работающих над одним плагином;
- планируется добавить плагин в официальный WordPress-репозиторий;
- требуется создание надежного и расширяемого кода;
- есть необходимость показать наглядный пример разработчику стандартов кодирования WordPress.
Когда не стоит использовать WordPress Plugin Boilerplate?
Вообще таких случаев немного. Например, не имеет смысла использовать WPPB, если ваш код содержит всего несколько строк, которые успешно можно добавить в файл functions.php. Также не стоит “заморачиватся”, если вы хотите внести какой то функционал для конкретной WordPress-темы. Для подобного случая как раз и создан файл functions.php.
Также читайте: Что такое register post type и как связано с произвольным типом записей.
Нажмите, пожалуйста, на одну из кнопок, чтобы узнать понравилась статья или нет.