Как добавить плагин в репозиторий WordPress?


11

Я только что сделал свой первый плагин, и он был одобрен WordPress. Отличная новость для меня, но что теперь? «Инструкции» по Кодексу для меня совсем не ясны. Я нашел статью о Dig WP, и мне удалось перейти к 3-й строке кода. После этого нет радости.

У кого-нибудь здесь есть четкий набор инструкций о том, как это сделать без необходимости читать всю книгу? Я уверен, что здесь есть очень опытные люди, которые делают это все время ...

Заранее спасибо!



@Piet: Если ссылки Bainternet, указанные в его ответе ниже, не отвечают на ваш вопрос, нам нужно будет знать, какие инструменты OS & svn вы используете.
Манзабар

да извините, я должен был упомянуть, что я на OSX 10.6 (Mac). Кроме того, очень любезно провести меня по этапам написания файла readme.txt, но это необязательно, так как плагин уже одобрен WordPress.org. Теперь я

и я скачал SVN с официального сайта (?), но я понятия не имею, как он работает и что мне с ним делать. Как я уже упоминал, я следовал руководству по DIG WP и сумел выполнить первые 3 строки, прежде чем программа остановилась на мне ($ mkdir my-local-dir $ svn co svn.wp-plugins.org/your-plugin- name my-local-dir $ cd my-local-dir /)

На самом деле, приложение не имеет ничего общего с файлом readme. Я часто подаю заявку (и получаю одобрение) еще до того, как начинаю разработку плагина.
EAMann

Ответы:


12

Шаг 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, который вы можете использовать, чтобы убедиться, что в вашем readme есть все, что ему нужно. Просто скопируйте и вставьте, и он проверит, чтобы убедиться, что все разделы есть, и что вы готовы к работе.

Шаг 2 - Проверьте репозиторий SVN

Хорошая идея - хранить свою версию для разработки отдельно от хранилища плагинов WordPress.org. Да, SVN используется для контроля версий, но WordPress использует его больше для управления релизами. Если вы начнете вносить все изменения в репозиторий, у вас могут возникнуть проблемы. Одна вещь, которую делают многие разработчики, это локальная разработка с использованием Git, а затем передача файлов в репозиторий Subversion, когда вы будете готовы выпустить релиз.

Эти инструкции предполагают, что вы используете компьютер с Windows. Если вы работаете на Mac, вы можете использовать SCPlugin вместо TortoiseSVN. Шаги, которые необходимо выполнить, будут одинаковыми, только контекстные меню и снимки экрана будут немного отличаться из-за пользовательского интерфейса. У меня нет Mac, поэтому я не могу создавать скриншоты, чтобы провести вас через учебник ... но поверьте мне, это тот же процесс.

Установите TortoiseSVN, если у вас его еще нет.

TortoiseSVN - это графический интерфейс Subversion с открытым исходным кодом для Windows. Поверьте мне, использовать GUI бесконечно проще, чем пытаться делать что-то из командной строки. У тебя тоже будет меньше проблем.

Проверьте ваш SVN-репозиторий на WordPress

Найдите место, где вы хотите хранить WordPress-версию вашего плагина. По умолчанию я использую /My Documents/WordPress/всю свою размещенную работу разработчиков. Щелкните правой кнопкой мыши внутри папки и выберите «SVN Checkout» в раскрывающемся меню.

TortoiseSVN Контекстное меню

В появившемся диалоговом окне введите URL-адрес хранилища плагинов WordPress.org (я использую один из них для демонстрационных целей) и выберите подпапку, которую вы хотите создать.

Оформить заказ

Черепаха немного подумает, а затем свернет хранилище с WordPress.org. В новой папке будут все необходимые папки, уже настроенные для вас. Теперь вы просто копируете и вставляете ... по одному шагу за раз.

Скопируйте свою последнюю версию в /tags

Это то, где я делаю вещи задом наперед из большинства уроков. Все остальные скажут вам /trunkсначала сделать коммит , но помните, что WordPress не использует ничего, /trunkкроме файла readme, при просмотре плагинов. Поэтому, если вы вставите свой плагин /trunkи потеряете свое сетевое соединение (или что-то еще пойдет не так), прежде чем вы добавите тег, у вас будут проблемы.

В /tagsпапке создайте папку с именем, совпадающим с версией, которую вы выпускаете для своего плагина. Так что, если вы выпускаете версию 0.1, создайте /tags/0.1папку.

Папка с тегами репозитория

Скопируйте весь плагин в эту папку.

Теперь щелкните правой кнопкой мыши внутри папки и выберите «SVN Commit» из выпадающего меню.

Вы увидите всплывающее окно, которое показывает все ваши изменения (вы должны увидеть все ваши новые файлы, помеченные как «не версионные»).

Окно фиксации

Установите флажок рядом со всеми файлами вашего плагина (или нажмите «Выбрать все», чтобы выбрать все из них).

В поле сверху введите сообщение о коммите. Поскольку вы фиксируете тег, вам, вероятно, следует использовать что-то вроде:

Пометка версии 0.1 [My Plugin].

Нажмите ОК.

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

Скопируйте свою последнюю версию в /trunk

Теперь перейдите в /trunkпапку репозитория и еще раз скопируйте и вставьте свой плагин в эту папку. Выполните те же действия, что и выше, чтобы выбрать файлы и подготовить коммит. Но для сообщения используйте что-то, что объясняет, что делает новый выпуск:

Версия 0.1 [My Plugin] - добавляет поддержку OpenID.

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

Обновление плагина до новой версии

Как только ваш плагин находится в дикой природе, подготовка обновления сравнительно легко.

Сначала используйте команду SVN Update, чтобы убедиться, что у вас установлена ​​последняя версия репозитория. Если вы являетесь единственным разработчиком, вы должны это сделать, но все равно рекомендуется обновиться, прежде чем делать коммит.

Затем выполните описанный выше процесс, чтобы создать новую подпапку /tagsдля новой версии. Скажем, /tags/0.2. Не трогай старую /0.1папку. Это по какой-то причине, и вы никогда больше не будете к ней прикасаться.

Зафиксируйте свой новый тег, затем перейдите в /trunkпапку. Замените все на /trunkновую версию и зафиксируйте, как указано выше. После обновления серверов они начнут говорить о новой версии, а не о старой.


1
Я предпочитаю делать все из сундука, так как он позволяет мне получить хорошую историю о происхождении каждой строки . С вашим подходом не все будет выглядеть так, как будто оно появилось в последней версии?
Ян Фабри

Большое спасибо за подробные инструкции @EAMann. К сожалению, я на Mac, извините, я должен был упомянуть, что в моем вопросе мой плохой ...

1
@Jan Вот почему я держу свое репо разработки отдельно от своего репо релиза . Я ужасно сломал вещи при использовании репозиториев WP.org для активной разработки, поэтому я разрабатываю локально с помощью Git или Hg для полной истории версий, а затем просто копирую в репозиторий WP Svn при сборке релиза.
EAMann

@Piet В этом случае посмотрите на SCPlugin для Mac. Инструкции будут точно такими же, будут отличаться только скриншоты. Он сделан многими одними и теми же людьми, поэтому он будет функционировать так же, как черепаха.
EAMann

@EAMann Спасибо, я сейчас скачиваю, расскажу как все идет ...
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.