Úprava pluginů v repozitáři WordPressu

Minule jste se mohli dozvědět něco o tom, jak se vlastně dělá plugin pro jeden z nejrozšířenějších redakčních systémů. Dnes se podíváme na to, jak plugin dostat do oficiálního repozitáře wordpressáckých pluginů a jak nahrané soubory editovat.

Ještě předtím, než získáte přístup do Plugin Directory, musíte dát vědět o svém pluginu. Až bude požadavek schválen, měl by vám přijít e-mail. Pravděpodobně se tak stane do třetího dne.

WordPress pro manipulaci s pluginy používá Subversion. Jedná se o systém pro vývojáře, který je určen k správě jednotlivých verzí softwaru. Abyste s ním mohli pracovat, potřebujete mít nainstalován SVN klient.

První nahrání pluginu

Nejdříve si na lokálním disku vytvoříme adresář, kam chceme uložit soubory pluginu. Pro přehlednost doporučuji zvolit stejné jméno, které nese váš plugin.

$ mkdir muj-plugin
# Lze provést i pomocí klasického grafického prostředí.

Poté se přihlásíme a Subversion do počítače stáhne 3 složky (trunk, branches a tags), které obsahují skryté soubory.

$ svn co http://svn.wp-plugins.org/muj-plugin muj-plugin
> A	muj-plugin/trunk
> A	muj-plugin/branches
> A	muj-plugin/tags
> Checked out revision 11325.

Veškeré soubory tvořící plugin přesuneme do adresáře trunk.

$ cd muj-plugin/
muj-plugin/$ cp ~/muj-plugin.php trunk/muj-plugin.php
muj-plugin/$ cp ~/readme.txt trunk/readme.txt
# Lze provést i pomocí klasického grafického prostředí.

Nyní určíme, které soubory chceme nahrát do repozitáře. Tento příkaz také použijeme vždy, když budeme chtít později k pluginu přidat nějaké nové soubory.

muj-plugin/$ svn add trunk/*
> A	trunk/muj-plugin.php
> A	trunk/readme.txt

Nakonec přidaný obsah uploadneme na server. Pro pozdější snadnou orientaci nezapomeneme na komentář.

muj-plugin/$ svn ci -m "verze 1.0"
> Adding	trunk/muj-plugin.php
> Adding	trunk/readme.txt
> Transmitting file data .
> Committed revision 11326.

Editace stávajících souborů

Jednotlivé zdrojáky ve složce trunk lze samozřejmě editovat v GUI. Ani já nejsem takový blázen, abych tak činil v terminálu. :-)

Veškeré změny provádějte pomocí SVN, nikoli manuálně! Např. pro mazání použijte příkaz svn rm soubor.php. Pokud jste si něco omylem smazali, můžete si stáhnout aktuální verzi přes svn up (soubory budou přepsány).

Až budete mít vše hotové, nahrajte soubory na server.

muj-plugin/$ svn ci -m "přidány funkce x a y"
> Sending	trunk/muj-plugin.php
> Transmitting file data .
> Committed revision 11327.

Otagování nové verze pluginu

Ještě než nahrajete novou verzi na server, zkontrolujte si, zda jste v hlavičce pluginu změnili jméno předchozí verze na aktuální. Vyhnete se tak různým nepříjemnostem.

Pro otagování lze využít adresářů tags nebo branches. První slouží k ukládání testovacích verzí a slepých vydání, které nebudou uživatelům oficiálně oznámeny (tohle pravděpodobně nebudete potřebovat). Složka branches je určena pro stabilní verze pluginu, o nichž budou uživatelé automaticky informováni.

Obsah adresáře trunk překopírujeme do nově vytvořené složky v adresáři branches, kterou příslušně pojmenujeme. Číselné názvy jsou standardem.

muj-plugin/$ svn cp trunk branches/1.1
> A branches/1.1

Po překopírování zase následuje připojení k serveru a upload. Nová verze by se měla v Plugin Directory objevit do 15 minut.

muj-plugin/$ svn ci -m "verze 1.1"
> Adding         branches/1.1
> Adding         branches/1.1/muj-plugin.php
> Adding         branches/1.1/readme.txt
> Committed revision 11328.

Hotovo! Příště si ukážeme pár užitečných triků, kterými můžeme plugin vylepšit.

Kam dál?

Odpovědi: 9

  1. Bacon

    Díky za tenhle článek! Velmi užitečné, doufám, že pomůže nejen mně :)

    #1 | Reagovat

  2. Bacon

    Tak už se pomalu daří, akorát jsem to tedy nějak poblbnul a povedlo se mi to nahrát do /trunk/trunk. Jdu nad tím laborovat.

    #2 | Reagovat

  3. Lelkoun

    @Bacon: Nejsi sám, komu se stávají podobné věci. :-D Kdyžtak se pak pochlub se svým pluginem, rád se na něj podívám. ;-)

    #3 | Reagovat

  4. Bacon

    @Lelkoun: Ono to není nic světoborného, pouze shorttag. Už se to objevilo i v přehledu pluginů, jupí :) Je to tu: http://wordpress.org/extend/plugins/mtv-embed-plugin/

    Za návod díky, bez něj by tam ten plugin nebyl :)

    #4 | Reagovat

  5. Krabath

    Ahoj, Lelkoune chtěl ybch se tě zeptat, sice to není k článku, ale líbí se mi jak máš ty malé šipky u odkazů. To je nějaký plugin? Mohl bys mi prozradit, pokud to není nějak tajné jak to vložím na své stránky? Děkuju za odpověď a omlouvám se, že to píšu sem.

    http://www.svetinformacicz.cz

    #5 | Reagovat

  6. Lelkoun

    @Krabath: Ahoj, jedná se o plugin http://wordpress.org/extend/plugins/sem-external-links/.

    #6 | Reagovat

  7. Krabath

    Děkuju moc, jen se ještě zeptám, jestli se dá nějak změnit barva té šipčičky. :)

    #7 | Reagovat

  8. Lelkoun

    @Krabath: Musíš použít nějaký grafický editor a barvu manuálně změnit.

    #8 | Reagovat

  9. Krabath

    Děkuju moc za rady.

    #9 | Reagovat

Komentujte!