Головна » WordPress » Посібник для початківців для розробки плагінів WordPress

    Посібник для початківців для розробки плагінів WordPress

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

    Ми розглянемо кілька способів розпочати розробку плагінів для WordPress. Ці кроки досить прості і не вимагають великої відданості вивченню. Рудиментарні знання PHP були б корисні навіть при базовому розумінні файлової структури WordPress і панелі адміністрування.

    У цьому короткому підручнику ми розглянемо основні кроки, необхідні для створення простого плагіна WordPress. Функціональність буде використана для створення динамічних витягів на основі числа, переданого у виклик функції. Вам потрібно буде завантажити файл-плагін і активувати з панелі адміністрування, а потім виконати виклик нашої функції з будь-яких сторінок, на яких ми хочемо, щоб уривок з'являвся. Посилання на завершений вихідний код модуля вже додано пізніше в цій статті.

    Навіщо розробляти для WordPress?

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

    WordPress спеціально пропонує такі вдосконалені функції у своїй CMS, що унікальні плагіни дуже мало. Як розробник ви маєте повний контроль над специфікою вашого блогіну. Наймання розробника PHP для створення системного плагіна коштуватиме набагато більше, ніж ви можете собі уявити, і API досить легко працювати і вивчати себе.

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

    1. Структура папки WP

    Вступ до структури папок WordPress покаже основні каталоги програм. Всередині wp-контенту ви знайдете плагінів каталог. Тут розміщуються всі ваші окремі плагіни, або окремі файли, або належні імена підкаталогів.

    Для дрібних плагінів, для яких потрібен лише один файл .php, ви маєте можливість розмістити його безпосередньо в каталозі плагінів. Однак, коли ви починаєте розробляти складніші програми, набагато корисніше створити підтеку, названу за вашим плагіном. Усередині ви можете розмістити JavaScript, CSS і HTML разом з вашими функціями PHP.

    A readme.txt Файл також може бути корисним, якщо ви плануєте пропонувати свій плагін для завантаження. Цей файл повинен містити ваше ім'я та те, що робить плагін. Як автор, ви також можете розглянути питання про кожну ревізію та оновлення.

    2. Запуск PHP-файлу

    При створенні нового плагіна вам потрібно почати з простого файлу PHP. Його можна назвати будь-яким іншим, але зазвичай має відображати офіційну назву вашого плагіна. Так, наприклад, я створив наш базовий код і назвав свій файл hongkiat-excerpt.phps.

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

     

    Ім'я плагіна - це те, що відображатиметься на вашій панелі адміністратора під час активації. Те ж саме з URI, який буде розміщено в панелі деталей панелі плагінів. Незважаючи на те, що не потрібно включати версію чи опис, це робить ваш плагін більш професійним.

    3. Угоди про найменування WordPress та найкращі практики

    Існує декілька способів структурувати свій плагін. Багато разів розробники PHP створюють всю систему класів, щоб уникнути зіткнень з функціями та іменами змінних. Якщо ви не знайомі з розширеною функціональністю ООП PHP, то краще просто написати свій код у зразкових функціях.

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

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

     

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

    4. Занурення у фільтри та дії

    Існує ще одна концепція, про яку варто згадати, перш ніж ми перейдемо до нашого сирого коду. Дії і фільтри це дві абсолютно різні концепції, які глибоко пов'язані з способами маніпулювання даними плагінів.

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

    Розуміння add_filter ()

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

    Наприклад, ви можете створити фільтр для зміни $ the_content яка є змінною, встановленою WordPress, що містить весь вміст повідомлення статті WordPress. За наш плагін ми будемо брати $ the_content і скорочення довжини символів у витримку.

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

    add_filter ('wp_title', 'hongkiat_func');

    Тут ми додаємо фільтр до заголовка сторінки WordPress. Зауважте, що цей код не стосується нашого офіційного плагіна і використовується лише як приклад.

    The add_filter Функція є рідною для WordPress і використовується для додавання нового фільтра до змінної, яка знаходиться в межах вмісту сторінки. У рядку вище ми націлюємося $ wp_title яка містить назву поточної сторінки. Потім ми передаємо цю змінну в підроблену функцію під назвою hongkiat_func () які могли б маніпулювати і повернути новий тег заголовка для будь-яких цілей.

    Розуміння add_action ()

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

    • publish_post - викликається, коли публікація публікується або коли статус змінюється на “опубліковано”
    • save_post - викликається, коли посада / сторінка створена з початку чи оновлення
    • wp_head - викликається, коли шаблон завантажується і запускається wp_head () функції
    • loop_end - викликається відразу після завершення обробки остаточного повідомлення через петлю WordPress
    • trackback_post - називається, коли до запису додано новий трекбек

    Знову ж таки, ми бачимо, наскільки простий цей біт коду зводиться до. Якщо ви можете зрозуміти різницю між діями та фільтрами, ви будете набагато ближче до створення всебічних, працюючих плагінів WordPress. Нижче наведено інший рядок коду, який ініціалізує функцію дії на save_post гачок. Щоб ще раз пояснити, це не стосується нашого поточного розроблюваного модуля і використовується лише як приклад коду для розуміння add_action () функції.

    add_action ('save_post', 'notify');

    Отже, тут ми бачимо подібну установку до того часу add_filter (). Нам потрібні 2 змінні, перша містить назву нашого гачка, на який ми орієнтуємося. В цьому випадку save_post це означає, що всякий раз, коли буде збережено нову публікацію, ми назвемо функцію, визначену на другій позиціїnotify ()). Очевидно, ви можете оновлювати сповіщення, будь-яку назву функції, яку ви хочете виконати, однак це не потрібно для нашого поточного прикладної плагіна.

    Завершення нашої плагіна логіки

    Завершуючи наш шлях, ми додамо свою останню функцію прямо до нашого файлу плагінів. Документація API дуже специфічна і надає відмінний ресурс розробникам, які можуть займатися розширеними запитаннями. Матеріал може здатися складним, якщо ви не знайомі з PHP, але не поспішайте з концепціями, і речі почнуть текти природно!

    Функцію нижче слід додати безпосередньо після коментаря заголовка плагіна. Альтернативно, це також може бути розміщено всередині вашої теми functions.php файл. Код використовується для створення динамічного вмісту повідомлення на основі обмеженого кола символів.

    Таким чином, для нашого прикладу ми можемо обмежити уривки з історії всього лише 55 символів hk_trim_content () функції. Ви можете легко назвати цей біт коду з віджета бічної панелі або одного з файлів вашої теми для заміни $ the_content.

    = $ limit) array_pop ($ content); $ content = implode ("", $ content). "…";  else $ content = implode ("", $ content); $ content = apply_filters ('the_content', $ content), повертається $ content;?> \ t $ content = preg_replace ('/ \ t 

    Не слід очікувати, що ви повністю розумієте всі внутрішні змінні або функції, що використовуються тут. Тільки отримати загальне уявлення про те, як повинні бути написані ваші функції і як приклад набору буде виглядати дуже гарним початком.

    Ви також можете помітити, що ми використовуємо виклик apply_filters яка є іншою специфічною для WordPress функцією. Це ще один аспект, який вам не потрібно повністю розуміти, але він допомагає з майбутнім програмуванням над WP. Ознайомтеся з довідковою сторінкою apply_filters.

    Назвіть основну функцію вище hk_trim_content (). Для цього потрібний лише один параметр з ім'ям $ limit. Це також можна скоротити до $ lim яка повинна зберігати ціле число, вказуючи, скільки символів обмежує ваш витяг. Вміст використовується на повних сторінках публікації, а також на статичних сторінках (про нас, контакт).

    Тому для того, щоб викликати цю функцію, нам потрібно буде додати цей параметр до файлів шаблонів. Це буде розміщено десь, можливо, у вашому index.php або loop.php Файли (файлів) і спочатку потрібно встановити плагін. Приклад нижче:

    Встановлення та запуск модуля

    Я створив зразок файлу для плагіна для демонстрації, якщо ви хочете пропустити жорстке кодування. Просто завантажте цей файл (перейменуйте його в .php) або скопіюйте / вставте код у новий документ PHP і завантажте його на свій / wp-content / plugins каталог.

    Після завершення ви хочете отримати доступ до панелі адміністрування WordPress і переглядати поточний набір плагінів для встановленої демонстрації. Після активації нічого нового не станеться, поки ми вручну не додамо в нашому виклику функції. Для цього просто орієнтуйтеся Вигляд -> Редактор і шукайте single.php.

    Цей файл містить всі шаблони HTML / CSS для сторінки основної статті. Прокрутіть вниз, поки не знайдете контент() і замінити наведеним вище кодом прикладу. Це обмежить всі сторінки вашої статті до 55 символів незалежно від того, який вид використовується. Ви також можете додати в цю функцію подібні сторінки у вашому каталозі шаблонів, наприклад search.php або archive.php.

    Висновок

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

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