Здравствуйте, дамы и господа, в этой статье расскажу, как создать собственный плагин на WordPress и зачем он нужен. Это очень простая задача, с которой справиться сможет даже новичок. К концу этой статьи вы уже будете уметь создавать плагины самостоятельно.

Также прилагаю видеоинструкцию, на которой процесс наглядно демонстрирую.

Зачем нужно делать собственный плагин на WP

Итак, вы, наверное, спросите, зачем нужно делать собственный плагин на Вордпресс? Ведь есть файл functions.php, в котором пользовательский код отлично работает. Отчасти, да, но не всё так просто. Давайте предположим такую гипотетическую ситуацию.

Итак, вы, наверное, спросите, зачем нужно делать собственный плагин на Вордпресс? Ведь есть файл functions.php, в котором пользовательский код отлично работает. Отчасти, да, но не всё так просто. Давайте предположим такую гипотетическую ситуацию.

У меня есть кастомный код для оптимизации скриптов, подключены другие коды для ускорения WP, а также счётчики и средства аналитики на сайте. И я решил под нужный набор инструментов выбрать подходящую тему, заодно протестировать скорость работы:

  1. Вариант 1. При каждой смене темы я переношу свои наработки из functions.php в аналогичный файл новой темы. Не скажу, что это сложно, но лишняя работа.

  2. Вариант 2. Делаю кастомный плагин, который создать не труднее, чем дочернюю тему.

  3. Вариант 3. Для «гениев». Добавляю нужный функционал на уровне ядра.

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

А теперь давайте к делу. Поступаем так:

  • весь код, который относится к функционалу темы, добавляем в functions.php.

  • весь код, который не относится к функционалу темы, выносим в отдельный плагин.

Это не просто правила хорошего тона, но и фишка, которая позволяет упросить жизнь, например, при смене темы.

Конечно, некоторые пытаются избегать подключения лишних плагинов, но тут неважно, куда внесли код, хоть в functions.php, хоть в кастомный плагин, ресурсов будет есть одинаково. Так что смело делайте собственный плагин, это не приведёт к падению скорости.

По приоритетам подключения получите +/- тоже самое.

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

Но если вы вручную выставили теги async для ресурсов текущей темы вашего сайта, то добавляйте в functions.php, так как ресурсы в другой теме могут отличаться от текущей.

Создаём плагин для WordPress

А теперь давайте создадим плагин самостоятельно. Все плагины расположены в папке: ваш-сайт/wp-content/plugins/.

Папка с плагинами в WordPress
Обычная папка с плагинами

В качестве плагина в этой папке можно разместить отдельный PHPфайл. Давайте создадим новый файл с расширением .php.

Создаём новый php-файл для плагина WordPress
Просто в конце названия файла должно быть .php

Вы можете свой PHPфайл разместить непосредственно в папке plugins, а можете создать отдельный каталог. Я предпочёл создать именно каталог.

Каталог для кастомного плагина
Новая папка для плагина сделана

Придумайте уникальное название, лучше заранее проверить, нет ли плагинов с аналогичным названием в репозитории.

Теперь нужно открыть ранее созданный PHP-файл и внести в него закомментированный код:


<?php 
/*
Plugin Name: Название плагина
Plugin URI: http://страница_с_описанием_плагина_и_его_обновлений
Description: Краткое описание плагина.
Version: Номер версии плагина, например: 1.0
Author: Имя автора плагина
Author URI: http://страница_автора_плагина
*/
?>
 

У меня, к примеру, такой:


<?php
/*
Plugin Name: Ren Plugin Custom
Plugin URI: http://decore3000.ru
Description: Плагин с моими кастомными функциями
Version: 1.0
Author: Я
Author URI: http://decore3000.ru
*/
?>
 

Что у нас здесь находится?

  1. Plugin Name. Имя плагина, для названия можно использовать кириллицу. Не обязательно уникальное, но если планируете в будущем добавить в репозиторий, то лучше придумать что-то, отличное от других плагинов. Единственный обязательный параметр, всё остальное можно не указывать.

  2. Plugin URI. Адрес сайта плагина. Если есть ресурс с документацией, описанием функционала и примерами работы, то укажите его.

  3. Description. Описание плагина. Если планируете добавлять в репозиторий, то распишите понятно. Если нет, то можете данную строку не добавлять.

  4. Version. Нужно для разработки. Предположим, начальная версия 1.0. Добавили новый код, указали версию 1.01, внесли в лог, какие изменения в этой версии провели.

  5. Autor. Укажите имя автора, можно гордо написать «Я».

  6. Author URI. Адрес сайта автора плагина.

Всё, по сути, плагин готов. Его уже можно активировать, но зачем нам пустой плагин? Давайте добавим в него код.

Добавляем код в кастомный плагин
Такой же код, как и в functions.php

Заметили ошибку? Отлично, давайте ошибку оставим и попробуем активировать плагин.

Невозможно активировать свой плагин из-за ошибки в коде
Невозможно активировать свой плагин из-за ошибки в коде

Как видите, я получил фатальную ошибку, потому плагин не был активирован. И это ещё одно преимущество своего плагина перед functions.php. Если я допущу ошибку в файле темы, то я порушу весь сайт, если сделаю ошибку в плагине на этапе разработки, то просто не смогу его активировать. Но учтите, если вы накосячете в уже активированном плагине, то сайт всё равно будет порушен. Для проверки нового функционала лучше создавать тестовый плагин.

Итак, ошибку исправили, снова нажимаем кнопку «Активировать». Отлично, плагин заработал, через него я добавил редиректы, а также Яндекс Метрику. Теперь они не привязаны к теме.

А сам код в плагине выглядит так:

Код в кастомном плагине
Просто пример

Всё, в принципе, мы справились с задачей. Как видите, создать собственный плагин для WordPress очень просто, новичок справится без проблем.

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

Собственный плагин готов

Как видите, задачка оказалась лёгкой. Да, создание собственного плагина для WP точно проблемой не будет. Проблема — разработка функционала. Так что дерзайте, как решить самую простую проблему, вам уже объяснил.

Всего доброго, желаю вам успехов и рабочего кода!

Нажмите для оценки!
[Оценило: 1 Средний: 5]