Основы плагина

Приступаем к работе

В простейшем случае плагин WordPress является файлом PHP со специальным комментарием-заголовком. Рекомендуется создать отдельный каталог для содержимого плагина. Примерно так: your-plugin-folder/your-plugin-file.php. Только один файл в папке плагина должен иметь секцию заголовка.

  1. Перейдите в каталог wp-content
  2. Войдите в папку plugins
  3. Создайте каталог для своего плагина, например, your-plugin-name
  4. Перейдите в созданный вами каталог
  5. Создайте новый файл PHP, например, your-plugin-name.php

Примерно так процесс выглядит при использовании командной строки в UNIX:

В примере выше, ‘vi’ является редактором. Используйте редактор, который удобен для Вас.

Теперь, когда Вы редактируете свой новый плагин, Вам нужно указать имя для него. Строки ниже — все, что нужно, чтобы WordPress распознал ваш плагин.

После того, как Вы сохраните файл, его можно увидеть в списке плагинов на Вашем сайте WordPress. Войдите в консоль WordPress и нажмите Плагины слева в навигации админки WordPress. Вы должны теперь видеть свой новый плагин!

Иногда плагин, который Вы создаете, предназначен только для Вашего сайта. Хотя скорее вы захотите поделиться своим новым плагином с остальной частью сообщества WordPress. В заголовке плагина вы указываете лицензию. Этим вы сообщаете пользователям, как они могут использовать Ваш код. Для поддержания совместимости с ядром WordPress рекомендуется выбрать лицензию, работающую с GNU General Public License (GPLv2+).

Существует еще больше значений, которые Вы можете добавить к заголовку плагина, что улучшит его отображение в консоли WordPress. Если планируете отправлять плагин на WordPress.org, Вы должны будете следовать требованиям для заголовка плагина WordPress.

Хуки: экшены и фильтры

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

Существует два типа хуков в WordPress: экшены (actions) и фильтры. Экшены позволяют добавлять или изменять функциональность WordPress, в то время как фильтры позволяют фильтровать или изменять как будет загружаться контент.

Хуки не только для разработчиков плагинов; они широко используются для обеспечения функциональности по умолчанию самого ядра WordPress. Другие хуки являются шаблонами в определенных местах, которые доступны для вас, если захотите изменить работу WordPress, когда это нужно. Именно это делает WordPress настолько гибким.

Два хука, в которых Вы будете нуждаться при создании плагина — register_activation_hook() и register_uninstall_hook(). При активации плагина запускается Хук активации. Может использоваться для функций при установке плагина — например, создавая некоторые настройки по умолчанию в таблице wp_options. Хук удаления используется для зачистки после удаления вашего плагина. Он запускается после хука деактивации и удаляет плагин из установки WordPress пользователя.

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

Добавление функций к хукам не является единственной вещью, которую Вы можете сделать. Вы можете также использовать remove_action для удаления функции, определенной ранее. Например, если Ваш плагин является дополнением к другому плагину, Вы можете использовать remove_action с тем же callback, добавленным предыдущим плагином с помощью add_action. Приоритет действий важен в этих ситуациях, поскольку remove_action должен быть запущен после инициализации add_action.

Вы должны быть осторожными при удалении экшена из хука, а также при изменении приоритетов, т.к. трудно увидеть, как эти изменения будут влиять на другие взаимодействия с тем же хуком. Мы настоятельно рекомендуем тестировать как можно чаще.

Вы можете узнать больше о создании хуков и взаимодействии с ними в разделе ХУКИ этого руководства.

Используйте WordPress APIs

Знаете ли вы, что WordPress предоставляет множество программных интерфейсов (Application Programming Interfaces API)? Эти API могут значительно упростить код ваших плагинов. Вы не хотите заново изобретать колесо — особенно, когда столько людей сделало большую работу и провели тесты для Вас. Наиболее распространенным является Options API, упрощающий хранение данных в БД для Вашего плагина. Если вы думаете о использовании cURL в плагине, то HTTP_API будет интерес для Вас. Так как мы говорим о плагинах, Вы наверняка захотите изучить Plugin API. Он имеет множество функций, которые помогут в разработке плагинов.

Как WordPress загружает плагины

Когда WordPress загружает список установленных плагинов, он ищет папку плагинов и подпапки для нахождения файлов PHP со специальными заголовками. Если Ваш плагин является всего одним файлом как Hello Dolly, он мог бы располагаться непосредственно в папке плагинов, но как правило, файлы плагина будут находиться в своей собственной папке, названной именем плагина.

Навигация по разделам:

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *