Шаблон
Создаем шаблон для будущего плагина на странице - https://wppb.me/
Этот шаблон копируем в папку плагинов wordpress.
Файловая структура
Папка 'admin'
В папке admin располагается весь код административной части, включая папки CSS, JS и других компонентов.
css/my-plugin-admin.css
- Файл для стилей страницы настроек плагина.
js/my-plugin-admin.js
- Файл для js страницы настроек плагина.
class-my-plugin-admin.php
- Этот файл содержит класс для создания административной части.
my-plugin-admin-display.php
- Файл содержит HTML код страницы настроек плагина.
Папка 'includes'
class-my-plugin.php
- Основной файл с классом для работы плагина, куда добавляются все действия и фильтры.
class-my-plugin-activator.php
- Файл содержит класс, необходимый для запуска во время активации плагина.
class-my-plugin-desactivator.php
- Файл содержит класс для деактивации плагина.
class-my-plugin-i18n.php
- Файл интернационализации.
class-my-plugin-loader.php
- Файл загрузчика, который регистрирует все события, фильтры и хуки.
Папка 'languages'
my-plugin.pot
- Файл локализации по умолчанию пуст.
Папка 'public'
css/my-plugin-admin.css
- Файл для стилей публичной части страницы плагина.
js/my-plugin-admin.js
- Файл для js публичной части страницы настроек плагина.
/partials/my-plugin-public-display.php
- Файл содержит HTML код страницы если плагин внедряет в шаблон сайта какие либо данные.
class-my-plugin-public.php
- Файл содержит класс для публичной части плагина. В методах класса добавляются события и фильтры, необходимые для реализации функциональности плагина.
Дополнительные файлы
Список и краткое описание файлов расположенных в корневой папке плагина:
LICENCE.txt
- Файл лицензии GPL-2.
README.txt
- Файл описания плагина и его установки.
uninstall.php
- Файл удаления плагина из WordPress.
my-plugin.php
- Файл начальной загрузки плагина. Тут расположена информация о плагине. Версия, автор и другие данные
Описание классов
Название классов может быть произвольным. Для понимания выбран класс my-plugin
my-plugin
"Главный" класс для работы с будущим плагином. В нем обрабатываются общие для административной и публичной части операции.
loader - для определения и доступа к классу
loader
plugin_name - название плагина
version - версия плагина
my-plugin_loader
Класс для быстрого объявления и задействования действий и фильтров
actions - массив действий
filters - массив фильтров
my-plugin-i18n
Класс для поддержки переводов
load_plugin_textdomain - Загружает файл с переводами
my-plugin-activator
Класс для активации плагина
activate - выполняется при активации плагина
my-plugin-deactivator
Класс для деактивации плагина
deactivate - выполняется при деактивации плагина
my-plugin-admin
Класс административной части. Здесь может быть добавлено объявление меню и прочего.
enqueue_styles - подключение уникальных стилей административной страницы
enqueue_scripts - подключение уникальных скриптов js административной страницы
my-plugin-public
Класс публичной части.
enqueue_styles - подключение уникальных стилей пользовательской страницы
enqueue_scripts - подключение уникальных скриптов js пользовательской страницы
Last updated