Написание простейшего плагина для WordPress

Написание простейшего плагина для WordPress

Появилось тут у меня желание «поковырять» WordPress (на нём собственно и работает этот сайт). И первое, что пришло в голову – это написать простейший плагин. Погуглив немного наткнулся на видеуроки Морковина. По мотивам этих уроков и родилась эта запись. В ней я попытаюсь пошагово изложить ход написания.

Итак, плагин будет при получении контента любой страницы добавлять к нему надпись.

Все испытания провожу на Denwer’е.
В каталоге plugins создаём пустой файл для будущего плагина.
Написание простейшего плагина для WordPress

Что внутри файла?

  1. Заголовок с описанием.
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    
    <?php
    /*
    Plugin Name: Название плагина
    Plugin URI: http://страница_с_описанием_плагина_и_его_обновлений
    Description: Краткое описание плагина.
    Version: Номер версии плагина, например: 1.0
    Author: Имя автора плагина
    Author URI: http://страница_автора_плагина
    */
    ?>
    <?php
    /*
    Plugin Name: Название плагина
    Plugin URI: http://страница_с_описанием_плагина_и_его_обновлений
    Description: Краткое описание плагина.
    Version: Номер версии плагина, например: 1.0
    Author: Имя автора плагина
    Author URI: http://страница_автора_плагина
    */
    ?>

    Написание простейшего плагина для WordPress

  2. Добавление хука, который вы хотите перехватить. Мы будем перехватывать событие (хук) the_content, которое возникает после того как контент получен из базы данных, но до того как он выведен на экран.. Перехват события выполняется функцией add_action(<событие>,<пользовательская функция>). Т.е. при перехвате события выполняется указанная пользовательская функция. Для обработки события the_content нужна пользовательская функция с одним аргументом. Обратите внимание, что контент должен вернуться из пользовательской функции с помощью конструкции return.
    1
    2
    3
    4
    5
    
    function send_message($content) {
        $content = $content.'<h1>Всего хорошего, и спасибо за рыбу!</h1>';
        return $content;
    }
    add_action('the_content', 'send_message');
    function send_message($content) {
    	$content = $content.'<h1>Всего хорошего, и спасибо за рыбу!</h1>';
    	return $content;
    }
    add_action('the_content', 'send_message');

Вот и результат работы:
Написание простейшего плагина для WordPress

Полный текст плагина:

1
2
3
4
5
6
7
8
9
10
<?php
/*
Plugin Name: Test plugin 1
*/
function send_message($content) {
    $content = $content.'<h1>Всего хорошего, и спасибо за рыбу!</h1>';
    return $content;
}
add_action('the_content', 'send_message');
?>
<?php
/*
Plugin Name: Test plugin 1
*/
function send_message($content) {
	$content = $content.'<h1>Всего хорошего, и спасибо за рыбу!</h1>';
	return $content;
}
add_action('the_content', 'send_message');
?>
Bookmark the permalink.

Добавить комментарий

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