Крок 1. Переконайтесь, що речі відформатовані правильно
Саме WordPress залежить від заголовків у верхній частині вашого основного файла плагінів. У багатьох випадках, якщо ваш плагін "My Cool Plugin", цей файл знаходиться my-cool-plugin.php
в головному каталозі вашої папки. Переконайтесь, що верхня частина файлу відповідає цьому формату:
<?php
/*
=== [Plugin Name] ===
Plugin Name: [Plugin name]
Plugin URI: [Website where plugin information can be found - your blog, maybe]
Description: [Short description of your plugin]
Author URI: [Your website]
Author: [Your name]
Version: [This version number]
*/
Репозиторій WordPress.org залежить від вашого readme.txt
файлу для створення опису та сторінки завантаження. Тому переконайтеся, що ваш readme.txt
файл відповідає наступному формату:
=== [Plugin Name] ===
Contributors: [Your WordPress.org username]
Donate link: [A site people can go to to give you money]
Tags: [Search terms related to your plugin]
Requires at least: [Minimum version of WordPress required]
Tested up to: [Newest version of WordPress you've tested with]
Stable tag: [This version number]
[Short, one-sentence description of your plugin]
== Description ==
[Long description of your plugin]
== Installation ==
[Steps required to install the plugin]
== Frequently Asked Questions ==
= [A question] =
[An answer]
= [Another question] =
[Another answer]
== Screenshots ==
== Changelog ==
== Upgrade Notice ==
На WordPress.org є зручний валідатор readme, який ви можете використовувати, щоб переконатися, що у вашому читанні є все необхідне. Просто скопіюйте та вставте, і він перевірить, чи всі розділи є, і що ви готові до роботи.
Крок 2 - Перевірте сховище SVN
Непогано тримати версію розробки окремо від сховища плагінів WordPress.org. Так, SVN використовується для контролю версій, але WordPress використовує його більше для управління версіями. Якщо ви почнете здійснювати кожен набір змін у сховищі, у вас потенційно можуть виникнути проблеми. Одне, що багато розробників роблять, - це розробляти локально за допомогою Git, а потім передавати свої файли в сховище Subversion, коли ви готові зробити випуск.
Ці інструкції передбачають, що ви використовуєте комп'ютер Windows. Якщо ви перебуваєте на Mac, ви можете використовувати SCPlugin замість TortoiseSVN. Етапи, які вам потрібно буде виконати, будуть однаковими, лише контекстні меню та знімки екрана незначно відрізнятимуться через інтерфейс користувача. У мене немає Mac, тому я не можу створювати скріншоти, щоб провести вас підручником ... але повірте, це той самий процес.
Встановіть TortoiseSVN, якщо у вас його ще немає.
TortoiseSVN - це графічний інтерфейс із відкритим кодом Subversion для Windows. Повірте, використовувати графічний інтерфейс нескінченно простіше, ніж намагатися робити речі з командного рядка. Ви також зіткнетеся з меншими проблемами.
Перегляньте свій сховище SVN, розміщене у WordPress
Знайдіть місце, де ви хочете зберігати WordPress-версію свого плагіна. За замовчуванням я використовую /My Documents/WordPress/
для всіх своїх розміщених розробок. Клацніть правою кнопкою миші всередині папки та виберіть у спадному меню пункт "SVN Checkout".
У діалоговому вікні, що з’явиться, введіть URL-адресу сховища плагінів WordPress.org (я використовую одну з моїх для демонстраційних цілей) та виберіть, яку підпапку ви хочете створити.
Черепаха трохи подумає, потім витягне сховище з WordPress.org. Щойно створена папка матиме всі необхідні для вас папки. Тепер ви просто скопіюйте та вставіть один крок за часом.
Скопіюйте останню версію в /tags
Ось де я займаюсь справами з більшості навчальних посібників. Всі інші скажуть вам зробити /trunk
перший, але пам’ятайте, що WordPress не використовує нічого, /trunk
крім файлу readme при перегляді плагінів. Тож якщо ви вставите свій плагін /trunk
і втратите мережеве з'єднання (або щось інше піде не так) перед тим, як зробити тег, у вас виникнуть проблеми.
У /tags
папці створіть папку, названу так само, як і версію, яку ви випускаєте для свого плагіна. Тож якщо ви випускаєте версію 0.1, створіть /tags/0.1
папку.
Скопіюйте весь цей плагін у цю папку.
Тепер клацніть правою кнопкою миші всередині папки та виберіть у спадному меню пункт "Виконати SVN".
Ви побачите спливаюче вікно, де відображаються всі ваші зміни (ви повинні побачити всі ваші нові файли, позначені як "неперевірені").
Поставте прапорець біля всіх файлів вашого плагіна (або натисніть "Вибрати все", щоб вибрати всі).
У поле вгорі введіть повідомлення про фіксацію. Оскільки ви робите тег, ви, ймовірно, повинні використовувати щось на кшталт:
Позначення версії 0.1 з [Мій плагін].
Натисніть кнопку ОК.
Знову ж, Черепаха подумає кілька хвилин, потім запитає ваше ім'я користувача та пароль WordPress для того, щоб взяти на себе зобов'язання на сервері. Надайте їх, зачекайте, коли все пройде, і скажіть "Успіх", а потім перейдіть до наступного кроку.
Скопіюйте останню версію в /trunk
Тепер перейдіть до /trunk
папки сховища та ще раз скопіюйте та вставте свій плагін у цю папку. Пройдіть ті ж самі кроки вище, щоб вибрати файли та підготувати фіксацію. Але для повідомлення використовуйте щось, що пояснює, що робить новий реліз:
Версія 0.1 [Мій плагін] - додає підтримку OpenID.
Як тільки все пройде, вам просто доведеться трохи почекати, поки сервери WordPress.org наздогнать. Вони можуть бути повільнішими на кілька днів, ніж інші, але протягом години або близько того, ви повинні побачити ваш новий випуск у сховищі.
Оновлення плагіна до нової версії
Після того, як ваш плагін в дикій природі, підготувати оновлення відносно просто.
Спочатку скористайтеся командою оновлення SVN, щоб переконатися, що у вас є остання версія сховища. Якщо ви єдиний розробник, ви вже повинні, але це найкраще оновити, перш ніж все-таки взяти на себе зобов’язання.
Потім перейдіть вище, щоб створити нову підпапку /tags
для нової версії. Скажімо, /tags/0.2
. Не торкайтеся старої /0.1
папки. Він є чомусь, і ви більше ніколи його не торкаєтесь.
Введіть новий тег і перейдіть до /trunk
папки. Замініть все на /trunk
новою версією та виконайте обов'язки, як зазначено вище. Після оновлення серверів вони почнуть говорити про нову версію, а не про стару.