О web-разработке
и даже немного больше...

Создаем свой плагин для WordPress

plugin-createWordPress один из популярных движков для сайтов, который позволяет расширять функционал посредством плагинов. На данный момент существует множество плагинов разного функционального назначения, которые позволяют реализовать те или иные задачи. При необходимости мы можем создавать свои плагины, об этом и пойдет речь дальше. Попробуем создать свой плагин для WordPress, для этого от нас потребуется знание основ PHP, а так же API WordPress.

Простейший плагин может состоять из одного PHP-файла, который размещается в директории /wp-content/plugins. Структуру плагина можно разделить на две составляющие: заголовок, по которому движок определяет что файл является плагином, получая дополнительную информацию, и программной части.

Посмотрим, как выглядит заголовок:

/*
Plugin Name: MyFirstPlugin
Plugin URI: https://href.kz/blog/wp/sozdaem-svoj-plagin-wordpress
Description: Описание плагина
Author: HTMAKER
Version: v.1.0
Author URI: https://href.kz
*/

Заголовок обязательно должен размещаться в самом начале файла плагина.

Переходим к программной части. Программную часть можно так же разделить на интерфейсную часть, а так же саму логику плагина. Интерфейсная часть содержит код описывающий взаимодействие с API WordPress.

API в WordPress представляет набор «хуков» — точки программного прерывания. Таким образом, в специальных местах при выполнении скриптов движка можно вызывать пользовательские функции. Хуки разделяются на два типа: «action» (действия), «filter» (фильтры).

Фильтры (filter) могут вызываться с любого места в движке или плагинов, принимая на вход какие-либо данные, производя необходимые манипуляции с данными – возвращать их обратно.

Действия (action) выполняются по достижению определенного этапа выполнения программы, как правило, ничего не возвращают, только выполняя какие либо операции.

Список хуков можно найти на сайте codex.wordpress.org

Для примера попробуем сделать простой плагин, который будет заменять слово «Привет» на «Салют» перед выводом текста поста. Воспользуемся хуком «the_content», добавим привязку нашей функции к данному хуку:

add_filter('the_content','my_hello_replace');

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

Далее описываем функцию:

function hello_replace($content) {
   $content = str_replace('Привет', 'Салют', $content);
   return $content;
}

Функция проста: в качестве входного параметра получает текст в переменной $content, с помощью стандартной PHP-функции str_replace заменяем необходимые строки, после замены возвращаем результат.

В итоге, должен получиться PHP-файл, с таким содержимым:

<?php
/*
Plugin Name: Hello-Salut
Plugin URI: https://href.kz/blog/wp/sozdaem-svoj-plagin-wordpress
Description: Плагин заменяет в тексте слово «Привет» на «Салют»
Author: А.Рустам
Version: v.1.0
Author URI: https://href.kz
*/

add_filter('the_content','hello_replace');

function hello_replace($content) {
   $content = str_replace('Привет', 'Салют', $content);
   return $content;
}
?>

Файл необходимо разместить в директории с плагинами, после чего активировать его из админки WordPress.

Опубликован: 16.12.2013 г.

См. также:

Убираем URL из формы комментариев WordPress
Работа с базой данных в WordPress
SQL-запросы для смены домена в WordPress
Мультиязычность с помощью плагина Polylang
Как создать свои шорткоды в WordPress
Как добавить виджет на сайт WordPress?
Добавление записей в WordPress средствами PHP
Как отключить архивы по авторам в WP?

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

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

Комментарии
  • Загрузка...
Друзья сайта