WordPress плагин – это функционал, разрешающий добавить новые возможности и сервисы к WordPress блогу. Эта статья поможет Вам создать хороший плагин, если такового вы не нашли.
Сначала надо определится с функциональностью плагина, чтобы потом выбрать его имя (уникальное). Следующей ступенью - будет создание PHP файла с именем плагина. Его имя должно быть уникальным, так как пользователь разместит ваш плагин в wp-content/plugins/, и если там будет фреймверк с таким же именем то возникнут конфликтные ситуации.
Плагин, не обязательно должен состоять из одного файла. Большинство – состоит из нескольких PHP файлов к которым подключаются файлы типа CSS, JavaScript, изображения и др. Но в таком случае уникальное имя должно быть у каталога, содержащего эти файлы. У Вашего плагина, обязательно, должен быть файл readme.txt, пример. Также неплохо было бы создать файл «домашней страницы», на которой была бы инструкция по установке, совместимость с версиями WordPress и тд.
В главном файле, в заголовке, хранится информация о нем. Без этой информации он не сможет быть активирован и запущен.
Формат заголовка имеет такой вид:
<?php
/*
Plugin Name: Название плагина
Plugin URI: http://страница_с_описанием_плагина_и_его_обновлений
Description: Краткое описание плагина.
Version: Номер версии плагина, например: 1.0
Author: Имя автора плагина
Author URI: http://страница_автора_плагина
*/
?>
Это тот минимум, который нужен для обнаружения Вашего плагина. После этого, в заголовке, идет информация о лицензировании плагина.
<?php
/* Copyright ГОД ИМЯ_АВТОРА_ПЛАГИНА (email: E-MAIL_АВТОРА)
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
?>
Теперь можно заняться программированием плагина. Следует также знать, что перед запуском функций, WordPress проверяет зарегистрированы ли они. Например, в конце HTML страницы, которую сгенерирует WordPress, проверяет есть ли у каких – нибудь плагинов зарегистрированная функция «wp_footer», если есть – запускает ее.
Еще один из типов добавления функционала – это создание тегов шаблонов, которые пользователь сможет добавит в свою тему. Для объявления тега шаблона Вам придется написать функцию PHP и задокументировать ее. Плюсом вашему плагину, будет описание вставки кода в шаблон.
Плагины, иногда получают данные из Ваших блогов, она сохраняется в Базу Данных WordPress. Структура, которая может сделать это, называется «Механизм настроек Wordpress». Основные функции, которые может использовать Ваш плагин для доступа к настройкам WordPress приведены ниже.
Для создания новой настройки используется:
add_option($name, $value, $deprecated, $autoload);
где, $name – имя настройки;
$value – значение настройки;
$deprecated – обычно передается пустая строка или null, для использования следующего параметра в функции.
$autoload – по умолчанию стоит «yes» - автоматическое извлечение настроек функцией get_alloptions.
get_option($option);
получает настройки с базы.
где, $option – имя настройки.
Для создания или обновления настройки в базе:
update_option($option_name, $newvalue);
где, $option_name – имя настройки;
$newvalue – новое значение.
Советы по созданию плагина
- Плагин, должен соответствовать стандартам разработки WordPress.
- Имена Ваших функций/каталогов должны быть уникальными.
- Не используйте префикс к БД WordPress явно(wp_), используйте «$wpdb->prefix».
- Заносите в базу не очень много записей.
- С помощью SELECT выбирайте только то, что вам нужно, ничего лишнего.
8 комментария к статье
мдя
хорошая статья, ещё б понять бы…
Как говорится, не понял но понравилось
Совсем не полное описание потому и не понятно.
Было бы неплохо разместить пример создания простого плагина …
Да, действительно, хотелось бы пример разобрать((
Тема конечно хорошая, но недоведена до ума, необходимо развивать. Согласен с ser_oleg, если бы доконца было бы доведенно то было бы понятнее. Совет автору, пожалуйста доведите до конца, тема хорошая!
Ни фига не понял, но в закладку положил…