Usando o Subversion com o diretório de plugins do WordPress

Publicados: 2012-07-24

Siga estas instruções passo a passo para adicionar e atualizar plug-ins no diretório público de plug-ins do WordPress.

Estes passos essenciais do vídeo seguem abaixo:

  • Introdução ao seu plug-in
  • Registre-se para uma conta WordPress.org
  • Solicitação para colocar seu novo plug-in no diretório de plug-ins do WordPress
  • Instale um cliente SVN para sua máquina
  • Escolha um diretório local para seus projetos
  • Seu e-mail de aprovação de solicitação de plug-in
  • Termos do diretório para este artigo
  • Puxando o novo diretório do servidor para sua máquina local
  • Termine de desenvolver seu plugin
  • Disponibilize sua primeira versão ao público
    • Atualizando o tronco do diretório do projeto
    • Marcando uma nova versão no servidor
    • Atualizando seu diretório de projeto local com a nova versão marcada
    • Atualizando a tag estável readme.txt
  • Novos desenvolvimentos para seu plugin

Introdução ao seu plug-in

Se você tem apenas uma ideia ou está quase terminando a versão 0.1, você precisa de um nome e uma descrição para o seu plugin. Faça o nome curto e descritivo, dando uma ideia do que o plugin faz. “Wax on Wax off Plugin” não é um bom nome. "Drop Shadow Maker" é muito melhor. Você não precisa adicionar “Plugin” ao título real.

Para acompanhar seu título, você deve escrever uma breve descrição dizendo às pessoas quais benefícios seu plugin oferece. Eu recomendo que esta descrição tenha menos de 150 caracteres.

Registre-se para uma conta WordPress.org

Se você ainda não tem uma conta WordPress.org – usada para interagir nos fóruns de suporte e similares – você precisa ter uma. Basta acessar: https://login.wordpress.org/register

Solicitação para colocar seu novo plug-in no diretório de plug-ins do WordPress

A maioria dos plug-ins razoáveis ​​fornecidos com uma licença compatível podem obter espaço no diretório de plug-ins do WordPress.

  1. Acesse: http://wordpress.org/extend/plugins/add/
  2. Preencha seu título e descrição
    (Eu disse que você precisaria disso!)
  3. Ignore o upload do seu plug-in neste formulário, mesmo que seu plug-in esteja pronto para ser usado.

Sua solicitação de diretório de plugins é processada por pessoas reais, então pode demorar um pouco.

Instale um cliente SVN para sua máquina

Para trabalhar com o Plugin Directory, você precisa de um cliente Subversion em sua máquina.

  • Para Windows, recomendo o TortoiseSVN.
  • Para Mac, parece que o SCPlugin é um bom pacote.

Basta escolher um e instalá-lo. Não há muito mais a dizer sobre isso.

Escolha um diretório local para seus projetos

O Subversion manterá uma cópia local de seus arquivos de plug-in atualizados com o Diretório de plug-ins do WordPress. Eu recomendo criar um diretório em sua máquina local onde você manterá todos os seus projetos rastreados pelo Subversion. Cuidado: Se você tiver um ambiente de desenvolvimento web em sua máquina local, não fique tentado a usar o diretório de plugins do WordPress do seu servidor web local como seu diretório de projeto.

Por exemplo, se você tiver uma instalação local do WordPress em sua máquina onde a pasta de plugins está:

documents/public_html/devdomain.com/wp-content/plugins/

…não pense que você pode usar esse diretório para sincronizar seus projetos do WordPress Plugin Directory. Isso vai te causar dor.

Em vez disso, crie um diretório como este exemplo:

documents/projects/wp-plugins-public/

Cada uma das pastas do seu projeto de plug-in ficará dentro de “wp-plugins-public”. Para este tutorial, usarei uma pasta de plugins chamada “content-scheduler”. Então, eu terei feito um diretório como tal:

documents/projects/wp-plugins-public/content-scheduler

Seu e-mail de aprovação de solicitação de plug-in

Assim que sua solicitação de plugin for aprovada, você receberá um e-mail com um link para seu repositório SVN. Isto é especificamente para aquele plugin e é necessário para prosseguir com a sincronização do Subversion.

Termos do diretório para este artigo

Com tantos diretórios, projetos e pastas diferentes mencionados neste artigo, pode ser fácil ficar confuso. Vamos concordar em três locais diferentes ao trabalhar com este fluxo de trabalho do Subversion.

  1. Diretório de trabalho
    Esta é a cópia atual do código que você está alterando e testando. Ele deve estar na pasta “/wp-content/plugins/” em seu servidor web de desenvolvimento. Na minha máquina acontece:
    documents/public_html/devdomain.com/wp-content/plugins/content-scheduler/
  2. Diretório do projeto
    Este é o diretório que seu cliente Subversion manterá sincronizado com o diretório de plugins do WordPress. Na minha máquina, isso é:
    documents/projects/wp-plugins-public/content-scheduler/
  3. Diretório do servidor
    Isso se refere ao seu projeto conforme armazenado no diretório de plug-ins do WordPress. É aqui que o público poderá obter seu plugin. O local raiz é chamado de “repositório SVN” e será atribuído a você em seu e-mail de aprovação de solicitação de plug-in. Para o meu exemplo, isso é:
    http://plugins.svn.wordpress.org/content-scheduler

Puxando o novo diretório do servidor para sua máquina local

Mesmo que você não tenha colocado nenhum arquivo em seu novo local de plug-in no Diretório de plug-ins, você precisa baixar essa cópia do diretório para sua máquina. Fazer isso define algumas bandeiras nos bastidores para ajudar seu cliente Subversion a saber o que está atualizado e o que não está.

  1. Clique com o botão direito do mouse na pasta do plug-in do diretório do projeto.
  2. Escolha “SVN Checkout”.
  3. Insira o URL do repositório SVN do WordPress (do seu e-mail de aprovação) no primeiro campo.
  4. A pasta do plugin do diretório do projeto deve estar no segundo campo.
    Como você iniciou esse processo clicando com o botão direito do mouse nessa pasta, esse campo já deve estar preenchido.
  5. Clique OK"

Termine de desenvolver seu plugin

Desenvolva e teste seu plugin. Isso inclui a criação de um arquivo “readme.txt” adequado para acompanhá-lo. O arquivo “readme.txt” não é apenas algumas notas aleatórias sobre seu plugin. O Diretório de Plugins do WordPress usa o conteúdo do arquivo “readme.txt” para entender qual versão do seu plugin é considerada atual e também para construir o conteúdo da página do seu plugin no Diretório.

  • Para obter mais informações sobre como criar um arquivo “readme.txt” adequado, consulte este exemplo do WordPress readme.txt.

Uma parte essencial do seu arquivo “readme.txt” é a tag “Stable”. Enquanto estiver desenvolvendo seu plug-in, deixe esta tag lendo “trunk”. Assim que você lançar uma versão para consumo público, nós a atualizaremos com o número de versão correto.

Disponibilize sua primeira versão ao público

Atualizando o tronco do diretório do projeto

  1. Copie o conteúdo do seu diretório de trabalho para a pasta “trunk” do diretório do seu projeto.
    No meu caso, estou copiando todo o conteúdo do meu plugin do diretório de trabalho:
    /documents/public_html/devdomain.com/wp-content/plugins/content-scheduler/
    para o diretório do meu projeto:
    /documents/projects/wp-plugins-public/content-scheduler/
  2. Clique com o botão direito do mouse na pasta do plugin “content-scheduler” no diretório do seu projeto e escolha “SVN Commit”.
  3. Insira um comentário para o commit, se desejar.
  4. Revise a lista de arquivos que são considerados novos e serão copiados para o servidor. Se esta lista parecer correta, clique em “OK” e os arquivos serão copiados para o diretório do seu servidor em wordpress.org.

Marcando uma nova versão no servidor

Você atualizou os arquivos no “tronco”, mas não é isso que o público deveria baixar. Você precisa usar “tagging” para criar uma cópia de “trunk”. Esta cópia não será mais alterada e será oferecida para uso público. Para este exemplo, vamos criar uma versão 1.0.

  1. Clique com o botão direito do mouse na pasta “trunk” do diretório do projeto e escolha “Branch/Tag”.
    Para mim, isso é:
    /documents/projects/wp-plugins-public/content-scheduler/trunk/
  2. O campo de localização “To URL” terminará em “/trunk”. Você precisa alterar isso para “/tags/1.0” para criar sua versão 1.0.
  3. Você pode adicionar uma nota sobre essa operação de marcação, se desejar.
  4. Clique em “OK” e ignore qualquer mensagem sobre “importante mudar para este ramo…”

Atualizando seu diretório de projeto local com a nova versão marcada

Você acabou de dizer ao servidor para fazer uma nova cópia de seus arquivos de projeto no diretório “/tags/1.0”. Agora, precisamos atualizar seu diretório de projeto local com essa nova tag.

Este processo pode parecer estranho. Você pode se perguntar por que não pode simplesmente fazer sua própria cópia em seu diretório local “/tags/1.0”. Se você fizer isso, o diretório do servidor e o diretório do projeto podem ficar confusos sobre o que é atualizado e o que não é.

  • Clique com o botão direito do mouse no diretório do projeto novamente e escolha “SVN Update”.
    Isso puxa as alterações do diretório do servidor para o diretório do projeto local. Nesse caso, a alteração é uma adição da cópia “/tags/1.0” de seus arquivos.

Atualizando a tag estável readme.txt

Todos os arquivos corretos estão disponíveis para o público usar seu plugin. No entanto, temos que informar ao Diretório de Plugins qual versão marcada o público deve usar.

  1. Edite o arquivo “readme.txt” na pasta “trunk” do diretório do projeto local.
    Para mim é o seguinte:
    /documents/projects/wp-plugins-public/content/scheduler/trunk/readme.txt
  2. Altere a "Etiqueta estável" para sua versão de lançamento, "1.0"
  3. Salve o arquivo
  4. Clique com o botão direito do mouse no arquivo “readme.txt” que você acabou de atualizar e escolha “SVN Commit”.

É isso! Em 15 minutos mais ou menos:

  1. O diretório de plugins do WordPress atualizará sua lista de projetos
  2. “1.0” será visto como a tag estável
  3. As informações em “/tags/1.0/readme.txt” serão utilizadas para preencher a página do seu projeto.

Novos desenvolvimentos para seu plugin

Muito provavelmente, você fará melhorias em seu plugin e precisará publicá-las. Veja como isso funciona.

  1. Faça alterações no plugin em seu diretório de trabalho.
    Essas alterações devem incluir alterações no arquivo readme.txt conforme necessário, como entradas do Changelog.
  2. Copie as alterações do seu diretório de trabalho para o diretório do projeto local.
  3. Certifique-se de que o arquivo readme.txt tenha a tag “stable” correta para a versão pública atual.
  4. Clique com o botão direito do mouse no diretório do projeto e escolha “SVN Commit” para obter suas novas alterações de tronco no diretório do servidor.
  5. Clique com o botão direito do mouse no diretório “trunk” no diretório do seu projeto e escolha “Branch/Tag” para criar uma nova tag de versão para lançamento. (Certifique-se de que “Criar cópia no repositório de:” esteja definido como “Cópia de trabalho”.)
  6. Clique com o botão direito do mouse no diretório do projeto e escolha “SVN Update” para baixar as alterações de tag do diretório do servidor.
  7. Atualize a tag estável no arquivo “/trunk/readme.txt” do diretório do projeto para corresponder à nova tag de lançamento que você criou.
  8. Clique com o botão direito do mouse no diretório do projeto (sim, mais uma vez) e escolha “SVN Commit” para obter o arquivo readme.txt atualizado para o servidor.

Ufa. Isso é tudo!

Você carregou algum plugin para o diretório de plugins do WordPress? Compartilhe sua experiência e comentários abaixo.
Tag: