Как создать простой виджет в WordPress
Как создать простой виджет в WordPress
Недавно возникла необходимость создать собственный виджет для WordPress'a. В рунете снова не нашлось понятной и четкой инфы по этому вопросу. Хочу сегодня от и до расписать процесс создания плагина с виджетом. Естественно при написании требуются знания html/php, ну и хотя бы малейшее представление о API WordPress.
1) И так, создаем файл с именем плагина first_widget.php в папке wp-contents/plugins/
2) Помещаем в заголовок стандартный код комментариев с описанием плагина(Думаю тут комментарии излишни, вам же нужен виджет, а не тщеславие!):
<?php /* Plugin Name: WP_widget Description: Your First WP widget Version: 1.0 Author: Your name. Author URI: http://sapfeer.ru */ |
2) После этого создадим 2 функции, одна из них будет отвечать за вывод самого плагина, а вторая за управление плагином:
function first_wp_widget($args) { extract($args); //Извлечение аргументов $title=get_option('first_widget_title'); //Получаем значение опции first_widget_title echo $before_widget; // --> начало вывода widget'a echo $before_title; // --> начало вывода заголовка widget'a echo (empty($title)? 'Set title please!' : $title); //Вывод заголовка widget'a echo $after_title; // --> конец вывода заголовка widget'a echo 'My First WP Widget :)'; // --> вывод основного html текста widget'a echo $after_widget; // --> конец вывода widget'a } |
Функция управления:
function first_wp_widget_control() { if (!empty($_REQUEST['first_widget_title'])) { update_option('first_widget_title', $_REQUEST['first_widget_title']); //Обновляем заголовок виджета } /*Вывод поля для имени виджета */ echo 'Widget\'s title:<br> <input style="width:200px;" type="text" name="first_widget_title" value="'.get_option('first_widget_title').'" /><br />'; } |
В принципе, функциональность плагина определяется именно этими 2мя функциями. Здесь же, хочу сделать несколько заметок по поводу этих функций. Название любой опции для плагина должно быть строго уникальным! Иначе может произойти путаница с другими плагинами. Так же в функции управления виджетом не нужно создавать форму. Все опции виджетов в админ панели физически находятся на одной форме. Поэтому достаточно указать лишь нужный вам элемент(textbox, radio, select и т.д.). Ну и, конечно, обязательно старайтесь контролировать значения ваших опций.
3) А теперь необходимо интегрировать наш виджет в вордпресс:
register_sidebar_widget('First WP Widget', 'first_wp_widget'); //регистрируем виджет register_widget_control('First WP Widget', 'first_wp_widget_control' ); //регистрируем элемент управления виджетом |
4) И, наконец, не забудьте закрывающий тег для php скрипта:
?> |
5) Все новый плагин готов, можете активировать его в настройках. Не забудьте добавить его на Sidebar и установить название заголовка.
Исходный код плагина можно скачать так же по ссылке first_widget.php.zip
loading...
27.09.2009
· Сергей · 2 комментария (-ев)
Метки: Плагин Wordpress · Рубрики: General
2 комментария (-ев)
AllEx - 07.02.2011
Строку echo ‘Widget’s title: стОит подредактировать:
echo ‘Widget\’s title:
Спасибо, поправил