01 Kasım 2008

Eklentilerinizi WordPress Dizinine Taşıyın

WordPress Yorum Ekle

Bugüne kadar birkaç tane eklenti/bileşen yazdım. Yazarken Türkçe yazıp, öyle yayınladım. Ancak eylültoprak'ın ısrarı hatta kafamın etini yemesi nedeniyle eklentilerimi WordPress Eklenti Dizinine de ekleme kararı aldım ve iki bileşenimi oraya ekledim. İlkini eklemeye çalıştığımda açıkçası ne yapacağımı bilemedim, aramalarıma rağmen Türkçe bir kaynak da bulamadım. Neyse ki buradaki yazıyı buldum da sorunsuz bir şekilde ekledim. Bu yazıyı mutlaka Türkçe'ye çevirip, dizine eklenti eklemeyi anlatmalıyım dedim ve eklediğim ikinci bileşenimi eklerken yaptığım işlemleri not alıp, burada da anlattım.
WordPress, eklenti dizini vasıtasıyla bizlere eklentilerimizi yayınlama ve barındırma imkanı sunuyor. Tabi ki eklentilerimizi burada yayınlarken İngilizce dil bilgimizi konuşturmamız gerekiyor. WordPress bu hizmeti Subversion denilen bir sistemi kullanarak veriyor. Normalde sunucu taraflı olan bu program, Linux işletim sisteminde komut satırı vasıtasıyla (sanırım öyle) kullanılabilir. Ancak bu yazımda bu sistemi Windows ortamında nasıl kontrol edeceğimizi anlacağım, bu nedenle sistemin sitesinde ya da WordPress'in sitesinde bu sistem ile ilgili anlatılan bilgiler bu yazının dışında kalacak.

Yapılacak İşlemler

Yazımda 'Advanced Random Posts' bileşenimi eklerken yaptığım işlemleri adım adım anlatacağım. Yaptığım işlemleri kendi eklenti/bileşeninize uygulayarak siz de kolay bir şekilde eklentinizi dizine ekleyebileceksiniz.

1. Bir WordPress.org Hesabı Açıyoruz

WordPress destek sayfasına gidip, kaydoluyoruz. Eklentimizi eklerken bu kullanıcı adına ihtiyacımız olacak. Bu nedenle kullanıcı adınızı ve şifrenizi unutmayın.

2. Eklentimizi Eklemek için İstekte Bulunuyoruz

İstekte bulunmak için buradaki adrese gidiyoruz. Siteye giriş yapmış olmamız gerekiyor. İstekte bulunmak için şunlara ihtiyacınız olacak:

  • Eklentinin ismi - İngilizce uygun bir isim bulun, hatta önce dizinde arama yapıp, aynı isimde başka bir tane var mı bakın.
  • Açıklayıcı birkaç cümle - Eklentinizin ne yaptığına ilişkin bir açıklama, tabi ki İngilizce olacak, diğer eklentilerinkini inceleyebilirsiniz.
  • Eklenti için bir sayfa (opsiyonel) - Benim yaptığım gibi bütün bu işlemlere başlamadan önce eklentinizle ilgili ayrıntılı açıklama yaptığınız bir sayfa hazırlayabilirsiniz, eğer bunu girmezseniz, eklenti adresi olarak dizin gösterilecektir, bence yapmalısınız

WordPress ekleyeceğiniz eklentilerin GPL Lisansı ile yayınlanmasını şart koşuyor. Yani eklentiniz açık kaynak olmalı.

3. Onayı Bekliyoruz

İsteğimizi, gerekli bilgileri girdikten sonra gönderiyoruz ve isteğimizin onaylanmasını bekliyoruz. Onaylanması durumunda kullanıcı hesabımıza girdiğimiz e-posta adresimize konu ile ilgili aşağıdakine benzer bir e-posta alacaksınız:

Onay e-postası
E-posta içerisinde eklenti dosyalarımızı yükleyeceğimiz dizin adresi (http://svn.wp-plugins.org/advanced-random-posts/) ve konu ilgili açıklamalara ulaşabileceğimiz birkaç adres bulunuyor. Bu dizine dosyalarımızı eklerken WordPress.org'a kaydolurken girdiğimiz kullanıcı adına ve şifresine ihtiyacımız olacak.

4. TortoiseSVN Programını İndiriyor ve Kuruyoruz.

Eklenti dizinimizi kontrol edeceğimiz programın adı TortoiseSVN olup, sadece Windows işletim sisteminde kullanabiliyorsunuz. Aslında bu bir programdan çok bir kabuk olarak çalışıyor. Yani kurulumu yaptığınızda öyle kısayoluna tıklayıp da çalışan bir program olmayacak, her işimizi sağ tuş menüsündeki (kısayol menüsü) seçeneklerle yapacağız. Programın kurulumu çok basit, ileri ileri diyerek kurabileceğiniz bir program, sadece kurulum sonunda bilgisayarınızı yeniden başlatmanız gerekiyor. Programı buradan indirebilirsiniz.

TortoiseSVN kurulumu

5. Bir Klasör Yaratıyoruz

Dizine ekleyeceğim eklentilerimi bir arada tutmak için bilgisayarımın E: bölümünde "Eklentilerim" isminde bir klasör oluşturdum. Siz istediğiniz isimde istediğiniz yerde oluşturabilirsiniz. Benim tavsiyem, klasörü taşımayacağınız, değiştirmek zorunda kalmayacağınız bir yerde ve isimde oluşturmanız.

6. Repository'mizi (WP eklenti dizinindeki yerimiz) Kontrol Ediyoruz

Biraz önce oluşturduğumuz klasöre girip, boş bir yere farenin sağ tuşu ile tıklıyoruz. Açılan kısayol menüsünden SVN Checkout seçeneğini seçiyoruz.

Kısayol menüsü - SVN Checkout seçeneği
SVN Checkout seçeneğini seçtikten sonra e-posta ile gelen ve eklentimizi ekleyeceğimiz dizini ve bu dizine gönderilecek dosyaların depolanacağı klasörü soran bir ekran gelecek. 'URL of repository' alanına e-posta ile gelen dizin adresini (http://svn.wp-plugins.org/advanced-random-posts/) giriyoruz. 'Checkout directory' bölümü (dosyaların depolanacağı klasör) otomatik doldurulacaktır. Resimdeki seçeneklerle devam ediyoruz.

Subversion Checkout Dialog penceresi
OK düğmesine tıkladığınızda aşağıdaki uyarı mesajını alacaksınız. Uyarı mesajında ilgili klasör içerisinde dosyaların depolanacağı, adı verilen klasörün bulunmadığı, oluşturmak isteyip, istemediğimiz soruluyor. Yes diyerek oluşturulmasını istiyoruz.

Klasör oluşturulsun mu? - Yes
Eğer her şey yolunda giderse aşağıdaki pencereden de anlaşılacağı üzere klasör oluşturulacak,

Klasörlerimiz oluşturuldu
ve oluşturulan 'advanced-random-posts' klasörü içerisinde de branches, tags ve trunk isimli üç klasör daha oluşturulacak. Klasör yapımızın son hali şu şekilde olacak.

Klasör yapımızın son hali

7. Read Me Dosyamızı Hazırlıyoruz

Eklentimizle ilgili bilgileri vereceğimiz bir readme.txt dosyası oluşturmamız gerekiyor. Bu dosya eklenti dizininde, eklentimizle ilgili sayfanın oluşturulmasında kullanılacağından çok dikkatli hazırlanması gerekiyor. Tabi ki belli kurallar içerisinde hazırlamalıyız. Buradaki örneğe uygun olarak, kendi eklentinize göre hazırlamalısınız. Dosyayı hazırladıktan sonra readme doğrulayıcı ile doğru hazırlayıp, hazırlamadığınızı kontrol etmelisiniz. Ayrıca eklenti dosyanızın başlık kısmındaki eklenti adı, açıklaması, eklenti adresi vb. bilgilerin de doğruluğunu kontrol edin. Başka eklentilerdeki readme.txt dosyalarını incelemenizi ve kendinize uyarlamanızı şiddetle tavsiye ediyorum (= sembolü arasındakiler başlıklar oluyor, onlara dikkat). Dosyayı 'Not Defteri' programını kullanarak, readme.txt adıyla kaydetmeniz gerekiyor.
Birkaç ipucu:

  • Eklenti ile ilgili etiketleri belirlerken buradakileri kullanabilirsiniz.
  • readme.txt dosyasını eklentinizin ana klasörüne kaydedin.
  • Eğer açıklamalarınızda ekran görüntüsü kullanacaksanız, bunların isimlerini screenshot-1, screenshot-2, screenshot-n... olacak şekilde isimlendirin. Uzantıları (.jpg, .png, .gif vs.) önemli değil.
  • Dosyanın önizlemesi için burayı kullanın.
  • Stable tag bölümü, eklentinizin stabil sürümünü ifade eder. Fazla coşmadan Stable tag: 1.0 yazabilirsiniz.

8. Dosyaları Trunk Klasörüne Kopyalıyoruz

Eklentimizin bütün dosya ve klasörlerini, readme.txt dosyasını, varsa ekran görüntülerini programın oluşturduğu trunk klasörüne kopyalıyoruz.

Benim trunk klasörüm ve eklenti dosyalarım

Dosyaları Yüklüyoruz

Trunk klasörü üzerine farenin sağ tuşuyla tıklıyoruz, kısayol menüsünden SVN Commit seçeneğini seçiyoruz.

SVN Commit kısayol seçeneği
Trunk klasörü içerisindeki dosya ve klasörlerin listelendiği ve dosyalarımızı göndermemizi sağlayacak bir diyalog penceresi görüntülencek. Pencerenin alt bölümündeki 'Select/deselect all' seçeneği ile tüm dosyaları seçip, OK düğmesine tıklıyoruz.

SVN Commit diyalog penceresi
OK düğmesine tıkladığımızda aşağıdaki gibi bir pencerede bizden kullanıcı adımız ve şifremiz istenecek, giriyoruz. İsterseniz 'Save authentication' seçeneği ile bunları kaydedebilirsiniz.

Kullanıcı adı ve şifremizi giriyoruz
Her şey yolundaysa aşğıdaki gibir bir ekranla eklenen dosyaları görebiliyoruz.

Trunk klasörüne eklenen dosyalarımız
Eklenti dizinimizdeki trunk klasörüne (http://svn.wp-plugins.org/advanced-random-posts/trunk/) baktığımızda dosyalarımızın gönderildiğini görebiliriz.

Dizindeki trunk klasörümüz
Eğer readme.txt dosyamızı kurallarına uygun olarak oluşturduysak, WordPress Eklenti Dizininde aşağıdaki gibi eklentimizin adını görebiliriz.

Eklentimiz yeni eklentiler arasında
Listeden eklentimizin başlığına tıkladığımızda ise eklentimize ait sayfa görüntülenecek, readme.txt dosyasına yazdığımız bilgilere dayalı olarak oluşturulan sayfada, eklentimizin indirilebilir hali otomatik olarak oluşturulmuş ve sitemize bağlantılar verilmiş olacak (resme tıklayın).

Eklentimizin dizindeki sayfası
Konu ile ilgili bir sonraki yazımda eklentimizin yeni sürümlerini nasıl dizine ekleyip, güncelleyebileceğimizi anlatacağım. Bunu da dizine eklediğim eklentilerimden birini güncellediğimde yapacağım. Kaynak sitede bu konu kısa bir şekilde anlatılıyor, isteyenler şimdilik oradan da öğrenebilirlir.
Kaynak: Listing your plugin at the WordPress.org plugin directory


Bu yazının kısa bağlantısı http://www.yakupgovler.com/?p=419.

Yazılarımı RSS aboneliği ile takip edebilir, yeni yazılarıma kolaylıkla ulaşabilirsiniz. Bunun için ise RSS adresimi kullanabilirsiniz.


“Eklentilerinizi WordPress Dizinine Taşıyın” yazısı için 7 Yorum

Bu yazıya yapılan yorumları dilerseniz, ( RSS 2.0 ) beslemesini kullanarak takibe alabilirsiniz.

  1. eylultoprak dedi ki:

    Aşk olsun kafanın etini yemedim 🙂
    Sadece ufak bir rica yaptım 😀

    Teşekkür ederiz.. Eklenti dizinine hoşgeldin hocam..
    Nerelerdeydin.. 🙂 Update işlerinden artık daha kolay takip edeceğiz seni hocam daha ne isteyelim başka..

  2. Melih dedi ki:

    Gerçekten nefis bir anlatım olmuş. Bende kendimce bir eklenti yapmıştım ve wordpress serverlarına taşımak istiyordum. Subversion'un kullanım kılavuzu biraz beni kasmıştı. Daha doğrusu ingilizcesi bir hayli zordu. Yazmış olduğun makale yardımıyla çok kolay bir şekilde hallettim.

  3. sabri ünal dedi ki:

    localde svn kullanıyorum, svn kullanımına aşina idim. bu durumda kendi yazdığımız eklentileri de wordpress veritabanına taşıyabiliriz...

  4. Yakup Gövler dedi ki:

    @sabri, elbette taşıyabilirsiniz. Yazıdaki işlemleri takip ederek kolaylıkla taşıyabilirsiniz. Kendi eklenti/bileşenlerimden 4 tanesini oraya taşıdım. En önemli aşamanın readme.txt dosyasını oluşturmak olduğunu sakın unutmayın.

  5. Eklenti Yazanlara 10 Öneri · Yakup Gövler - WordPress'e dair ne varsa - Eklenti Fonksiyon İpucu WordPress dedi ki:

    [...] ulaşabilmesi için onu WordPress.org'daki eklenti dizinine taşımanız yerinde olacaktır. Eklentilerinizi WordPress Dizinine Taşıyın başlıklı yazımda bunu nasıl yapabileceğiniz var. Eklentinizi taşıdığınızda eklentiniz [...]

  6. Evren dedi ki:

    Hocam ellerine, ağzına sağlık. Bu svn olayını çözememiştim, artık bende eklentimi plugin dizinine ekleme çalışmalarına başladım 🙂

    İzniniz olursa yazınızı kaynak göstererek, blog'umda yayınlamak isterim.

  7. Yakup Gövler dedi ki:

    @Evren, Kullanım sayfasındaki kurallar çerçevesinde istediğiniz yazımdan alıntı yapabilirsiniz.