Повний посібник з розробки плагінів для WordPress: створення власних функцій з нуля

Прочитайте за 2 хвилини.
2026-03-16
2026-06-04
2,756
Я заробляю комісію, коли ви робите покупки за посиланнями нижче, без додаткових витрат для вас.

Підготовчі роботи та налаштування середовища

Перш ніж почати писати код, стабільне та професійне середовище розробки є основою для успіху. Це не лише підвищує вашу ефективність програмування, але й гарантує сумісність плагінів у різних середовищах.

Налаштування локального середовища розробки

Рекомендується використовувати набори інструментів для налаштування локального серверного середовища, такі як Local by Flywheel, XAMPP або MAMP. Ці інструменти дозволяють одним кліком встановити Apache, MySQL та PHP, ідеально імітуючи умови роботи сервера в мережі. Обов’язково переконайтеся, що версія PHP відповідає вимогам вашої версії WordPress; зазвичай рекомендується використовувати PHP 7.4 або вищі версії для кращої продуктивності та безпеки.

Вибір кодових редакторів та інструментів

Потужний кодовий редактор має вирішальне значення для ефективної роботи з програмним забезпеченням. Visual Studio Code,PhpStorm та Sublime Text є чудовими варіантами – вони забезпечують підкреслення синтаксису, автодоповнення коду та можливості налагодження помилок. Крім того, встановлення інструменту версійного контролю Git є стандартом галузі для керування змінами в коді, спільної роботи команди та створення резервних копій.

Рекомендуємо до прочитання. Посібник з розробки плагінів для WordPress: шлях від початківця до майстра

Створіть свій перший файл плагіна.

Найважливішою частиною будь-якого плагіна для WordPress є його основний файл. Цей файл містить не лише виконуваний код плагіна, але й метаінформацію про нього, яка передається системі WordPress за допомогою спеціальних коментарів у вигляді заголовків файлів.

UltaHost – хостинг для сайтів, побудованих на платформі WordPress
Гарантія повернення грошей протягом 30 днів, необмежена пропускна здатність мережі та доступ до баз даних, безкоштовний захист від DDoS-атак; знижка 50% при покупці на термін 3 роки (варіанти об’ємів трафіку: 4 ТБ/5

Структура основного файлу плагіна

Кожен плагін має мати головний PHP-файл. Зазвичай ми називаємо цей файл на основі функцій, які виконує плагін. Наприклад: my-first-plugin.phpНа початку файлу мають бути стандартні коментарі з інформацією про плагін – це ключовий елемент для того, щоб WordPress ідентифікував плагін.

<?php
/**
 * Plugin Name: 我的第一个自定义插件
 * Plugin URI:  https://example.com/my-first-plugin
 * Description: 这是一个用于演示的 WordPress 自定义插件。
 * Version:     1.0.0
 * Author:      你的名字
 * Author URI:  https://example.com
 * License:     GPL v2 or later
 * Text Domain: my-first-plugin
 */

Цей коментар повідомляє WordPress про те, щоб на сторінці “Плагіни” у задньому режимі відображатися інформація про плагіни, така як їхні назви, описи тощо. Text Domain Використовується для інтернаціоналізації, щоб підготувати основу для подальших перекладів.

Активація та деактивація плагінів

Після створення головного файлу вам потрібно розмістити його у каталозі, де знаходиться встановлений WordPress. /wp-content/plugins/ У папці. Їх можна розмістити окремо або створити для них окремий каталог (наприклад…). /wp-content/plugins/my-first-plugin/Після цього помістіть основний файл у відповідне місце. Коли все буде готово, увійдіть у панель керування WordPress та перейдіть на сторінку “Плагіни”. Там ви побачите новий плагін та зможете натиснути кнопку “Увімкнути”.

Розуміння основних механізмів WordPress: хаки та фільтри

Міцність та гнучкість WordPress значною мірою зумовлені системою “хаків” (Hooks). Плагіни можуть змінювати або додавати функціонал WordPress, “під’єднуючись” до цих хаків, без необхідності змінювати основний код системи.

Рекомендуємо до прочитання. Детальний аналіз розробки плагінів для WordPress: створення власних функцій з нуля

Використання дій-хуків (action hooks)

Акційні хаки (Action Hooks) дозволяють виконувати власний код у певні моменти часу – наприклад, під час публікації статті, під час входу користувача або під час завантаження сторінки адміністративного інтерфейсу. add_action() Функція дозволяє прикріпити вашу функцію до вказаного „хака“ (hook).

Наведений нижче приклад демонструє, як додати рядок власного тексту вниз частини передньої сторінки веб-сайту. Ми використовуємо… wp_footer Цей хакерський інструмент („акційний хак“) призначений для виконання певних дій на системі.

Функція myplugin_add_footer_text() {
    echo '<p style="text-align:center;">Дякуємо, що використовуєте наш веб-сайт!</p>';
}
add_action( 'wp_footer', 'myplugin_add_footer_text' );

Використання фільтрів

Фільтри (Filters) використовуються для зміни даних, які генеруються під час виконання певних процесів. На відміну від дій (Actions), фільтри повинні отримувати вхідне значення та повертати змінене значення. add_filter() Функція призначена для застосування фільтрів.

hosting.com Віртуальний хостинг
Висока продуктивність завдяки процесорам AMD EPYC, SSD-накопичувачам NVMe і технології LiteSpeed, цілодобова експертна підтримка, розширені заходи безпеки, включаючи SSL, грубу силу, захист від шкідливих програм і DDoS, економія до 73%.

Наприклад, наведений нижче код змінює вміст, що відображається наприкінці заголовків статей, додаючи до всіх заголовків певний суфікс. Ми використовуємо… the_title Цей фільтр.

function myplugin_modify_title( $title ) {
    // 确保只在主循环中修改
    if ( is_single() ) {
        return $title . ' [推荐阅读]';
    }
    return $title;
}
add_filter( 'the_title', 'myplugin_modify_title' );

Додайте сторінку налаштувань для плагіна.

Зрілий плагін зазвичай має надавати користувачам можливість налаштувань. У WordPress існує стандартизований спосіб створення сторінок налаштувань для плагінів, які можна додати до різних місць у меню адміністративної панелі.

Створити елемент меню керування

По-перше, вам потрібно використати… add_action( ‘admin_menu’, … ) Існують спеціальні механізми для реєстрації нових сторінок меню. WordPress надає кілька функцій для додавання меню різних рівнів. add_menu_page()(Верхній меню) або add_options_page()(Додати до підменю “Налаштування”).

Рекомендуємо до прочитання. Повний посібник з розробки плагінів для WordPress: від початківців до майстрів – створення функціональних плагінів

Наведений нижче код демонструє, як створити просту сторінку з верхнім меню. Функція… myplugin_settings_page_html Відповідає за рендеринг HTML-контенту цієї сторінки.

function myplugin_add_menu() {
    add_menu_page(
        ‘我的插件设置’,          // 页面标题
        ‘我的插件’,             // 菜单标题
        ‘manage_options’,      // 所需权限
        ‘myplugin’,            // 菜单 Slug
        ‘myplugin_settings_page_html’, // 回调函数
        ‘dashicons-admin-generic’, // 图标(可选)
        20                     // 位置(可选)
    );
}
add_action( ‘admin_menu’, ‘myplugin_add_menu’ );

function myplugin_settings_page_html() {
    // 检查用户权限
    if ( ! current_user_can( ‘manage_options’ ) ) {
        return;
    }
    ?&gt;
    <div class="“wrap”">
        <h1><p><strong>  <p><strong></h1>
        <form action="/uk/“options.php”/" method="“post”" data-trp-original-action="“options.php”">
            <?php
            // 输出设置字段
            settings_fields( ‘myplugin_options’ );
            do_settings_sections( ‘myplugin’ );
            submit_button( ‘保存设置’ );
            ?>
        <input type="hidden" name="trp-form-language" value="uk"/></form>
    </div>
    &lt;?php
}

Реєстраційні налаштування, поля та блоки

Щоб вищезгаданий формуар міг зберігати дані, вам потрібно використовувати API налаштувань WordPress. Це включає в себе налаштування формування полів формуара, обробку поданих даних та їх зберігання в базі даних. register_setting() Зареєструйте групу налаштувань. add_settings_section() Додайте один розділ, а також використовуйте… add_settings_field() Додайте конкретні поля.

Міжсерверний віртуальний хостинг
Віртуальний хостинг $2.50 USD на місяць, перший місяць $0.1 USD за промокодом tryinterserver, 461 скрипт хмарних додатків, встановлення в один клік.

Цей процес зазвичай відбувається… admin_init Виконано всі необхідні кроки у рамках цього процесу. Після налаштування API автоматично буде здійснюватися перевірка даних та їх зберігання. wp_options Це значно спрощує процес розробки завдяки підтримці стандартів безпеки (наприклад, перевірки випадкових значень типу Nonce).

підсумок

Розробка плагінів для WordPress є систематичним процесом, який починається зі створення середовища розробки та базових файлів, продовжується глибоким розумінням та використанням системи хуків (hooks), а завершується розробкою інтерфейсу для взаємодії з користувачем. Дотримання стандартів кодування WordPress та рекомендацій щодо практичної реалізації (наприклад, використання коментарів у заголовках плагінів, безпечних префіксів для функцій, підтримки міжнародної локалізації та налаштування API) не лише гарантує стабільну роботу плагіна, але й полегшує його обслуговування та розширення. Ключовим моментом є ефективне використання величезної екосистеми хуків, яка надається WordPress, для модульного та неперешкоджаючого розширення функціоналу веб-сайту. Завдяки практиці, описаній у цьому посібнику, ви вже опанували основи створення власних плагінів із повним набором функцій та чіткою структурою.

Часті запитання

Які програмні навички необхідні для розробки плагінів?

Вам потрібні міцні знання основ PHP, оскільки ядро WordPress та його плагіни переважно написані на цій мові програмування. Крім того, необхідне базове розуміння HTML, CSS та JavaScript (особливо jQuery, оскільки в старіших версіях WordPress використовується велика кількість коду на цих мовах), що допоможе вам опрацьовувати фронтенд-відображення та взаємодію користувачів. Також буде корисним знання основ операцій з базою даних MySQL.

Як уникнути конфліктів між назвами функцій плагінів та іншими плагінами?

Найкраща практика для уникнення конфліктів – це використання унікальних префіксів для найменування всіх ваших функцій, класів, констант та змінних. Цей префікс має бути достатньо унікальним та зазвичай пов’язаним із назвою вашого плагіна або його скороченням. Наприклад, якщо ваш плагін називається “Awesome Widget”, ви можете використовувати префікс на кшталт “ aw_awesome_widget_AW_ 作为前缀。将代码封装在类(Class)中也是现代 WordPress 插件开发中广泛采用的、更优雅的避免冲突和组织代码的方式。

У якому каталозі слід зберігати плагіни?

Файли плагінів слід зберігати у каталозі встановлення WordPress. /wp-content/plugins/ У папці. Для простих плагінів, які складаються з одного файлу, можна просто розмістити основний PHP-файл у цю папку. Для більш складних плагінів дуже рекомендується створити окрему підпапку з назвою плагіна (наприклад…). /wp-content/plugins/my-awesome-plugin/Потім всі файли плагінів (PHP, CSS, JS, зображення тощо) слід розмістити у цьому підкаталозі. Це робить керування файлами більш чітким та організованим.

Як додати підтримку перекладу до плагіна?

Додавання підтримки інтернаціоналізації (i18n) до плагіна в основному включає наступні кроки: спочатку необхідно правильно налаштувати параметри в коментарях на початку коду плагіна. Text DomainІ використовуйте у коді функції перекладу WordPress, такі як… ()_e()esc_html() Використовуйте певні інструменти, такі як Poedit, щоб вилучити всі рядки, які потрібно перекласти, та створити відповідний перекладовий файл. .pot Шаблонні файли, на основі яких створюються відповідні мовні версії продукту. .po.mo Нарешті, використовуйте цей код під час ініціалізації плагіна. load_plugin_textdomain() Функція для завантаження перекладу.