wp-cli logo

WP-CLI 1.2.0 yayımlandı! Peki ama WP-CLI ne?

Aranızda “İyi, güzel de, WP-CLI nedir ki?” diyenler olabilir. Dolayısıyla 1.2.0 sürümündeki yeniliklerden bahsetmeden önce genel olarak WP-CLI’nin ne olduğundan biraz bahsetmek yerinde olacak. 2011 yılından beri geliştirilmekte olan proje 2016 yılının sonunda (gerçekten sonunda, Matt’in duyurusu 29 Aralık 2016 tarihli) WordPress.org çatısı altına taşındı. Finans problemleri de çözülünce, geliştirmeler iyice hızlandı.

Önce ismini mercek altına alırsak, WP, bildiğiniz WordPress, CLI ise Command Line Interface’in kısaltması. Türkçesi komut satırı arabirimi olan bu arabirimi farklı isimlerle de tanıyor olabilirsiniz; siyah ekran, terminal.

WP-CLI, web tarayıcı kullanmadan, bu arabirim üzerinden çeşitli komutlar vererek WordPress ile ilgili bir çok işlemi yapabilmenize olanak sağlıyor. Tema ve/veya eklentilerinizi güncelleyebilir, yeni bir WordPress kurulumu yapabilir ve hatta komut satırından yeni bir yazı bile oluşturabilirsiniz. Ya da tüm bunların ötesine geçebilir, kendi komutunuzu yazarak, tamamen sizin istediğiniz işleri yapan bir komut ortaya çıkartabilirsiniz.

WP-CLI Kurulumu

Paketlere geçmeden önce WP-CLI’nin nasıl kurulacağını, belgeleri Türkçe’leştirerek buraya aktarayım;

WP-CLI’nin önerilen kurulum yöntemi, yapılandırılmış Phar dosyasının indirilerek, çalıştırılabilir olarak işaretlenip, PATH (yani erişilebilir bir yola) eklenmesi şeklindedir.

Önce wp-cli.phar dosyasını wget ya da curl ile indirin. Örneğin;

curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar

Sonra çalışıp çalışmadığını kontrol edin:

php wp-cli.phar --info

Her şey yolunda gittiyse bu komut size kullandığınız PHP sürümü, WP-CLI sürümü hakkında bilgiler verecektir.

Her seferinde php wp-cli.phar kullanmak yerine kısaca wp kullanabilmek için önce dosyayı çalıştırılabilir olarak işaretlemeli ve sonrasında erişilebilir bir yola (PATH) yerleştirmelisiniz. Örneğin:

chmod +x wp-cli.phar
sudo mv wp-cli.phar /usr/local/bin/wp

Şimdi artık wp komutunu kullanabiliyor olmalısınız. wp --info komutunu çalıştırmayı deneyin. Eğer her şey olunda gittiyse, aşağıdakine benzer bir çıktı görmeniz gerekir:

PHP binary:  /usr/local/Cellar/php70/7.0.19_11/bin/php
PHP version:    7.0.19
php.ini used:   /usr/local/etc/php/7.0/php.ini
WP-CLI root dir:    phar://wp-cli.phar
WP-CLI vendor dir:  phar://wp-cli.phar/vendor
WP_CLI phar path:   /Volumes/Workspace/karalamalar.net
WP-CLI packages dir:
WP-CLI global config:
WP-CLI project config:
WP-CLI version: 1.2.0

Buna benzer bir çıktıya ulaştıysanız, tebrikler! Artık siz de bir WP-CLI kullanıcısısınız.

Kurulum için bu yöntemi tercih ettiyseniz, yeni sürümlere güncellemek de çok kolay. Aşağıdaki komutu uygulamanız yeterli.

sudo wp cli update

Artık kurulumu tamamladığınıza göre, bir kaç komut vermenin vakti geldi. En güncel komut listesine paket indeksinden ulaşabilirsiniz. Konunun daha iyi anlaşılabilmesi için burada bir kaç örnek sıralayacağım.

İşinize yarayabilecek bazı komutlar (ve alt komutlar)

$ işareti komut satırını işaret etmektedir. Komutları uygularken en baştaki $ işaretini yazmamanız gerekiyor.

wp core

Yeni bir WordPress kurulumu ya da var olan kurulumun güncellenmesi/yönetilmesi gibi işlemleri yapabilirsiniz. Örneğin wp core download alt komutu ile bir klasöre hızlıca sıkıştırılmış WordPress paketinin indirilip, açılmasını sağlayabilirsiniz. Dil desteği için locale parametresini kullanabilirsiniz. Örneğin Türkçe için;

$ wp core download --locale=tr_TR
Downloading WordPress 4.7.5 (tr_TR)...
Success: WordPress downloaded.

WordPress sürümünüzü komut satırından güncellemek için update alt komutunu kullanabilirsiniz.

$ wp core update

Bazen WordPress güncelleme sırasında takılabiliyor ve bunun neticesinde güncelleme yapmak istediğinizde Hata: Başka bir güncelleme devrede şeklinde bir mesaj alabilirsiniz. Başka bir güncellemenin o an devam etmediğinden eminseniz aşağıdaki WP-CLI alt komutuyla güncelleme kilit anahtarını temizleyebilirsiniz;

$ wp option delete core_updater.lock

Sonra tekrar güncellemeyi deneyebilirsiniz.

Bazen de istenmedik durumlarla karşı karşıya kalabilirsiniz. Örneğin, kullandığınız tema, yeni WordPress sürümü ile uyumlu değil fakat siz bunu bilmeden yükseltme yaptınız. Eski sürüme geri dönmek için --force parametresi ile beraber --version parametresini kullanabilir, WordPress kurulumunuzu istediğiniz sürüme geri döndürebilirsiniz.

$ wp core update —force —version=4.7

wp plugin

Yönetim panelinde eklentiler bölümünden yapabildiğiniz tüm işlemleri komut satırından yapabilmenize olanak sağlayan bir komut. Alt komutları ile WordPress kurulumunuzdaki eklentilerin bakımını yapmak ya da yeni eklenti yüklemek inanılmaz kolaylaşıyor.

$ wp plugin list

Üstteki alt komut ile mevcut eklentilerinizi listeleyebilir, etkin olup olmadıklarını, mevcut sürüm numarasını ve güncelleme olup olmadığını görebilirsiniz. Güncellemesi olanları bir kerede güncellemek isterseniz aşağıdaki alt komutu kullanabilirsiniz;

$ wp plugin update --all

Özellikle eklentilerde küçük bakım güncelleştirmeleri biriktiğinde hızlıca tüm eklentileri güncelleştirebilmek büyük kolaylık sağlıyor.

Her zaman olduğu gibi hatırlatalım; eklentilerinizi güncellemek bu kadar kolay olsa bile, öncesinde dosya ve veritabanı yedeği almanızı öneririm.

core update alt komutunda olduğu gibi bu alt komutta da --version parametresi ile bir eklentinin tercih ettiğiniz sürümünü yükleyebilirsiniz.

wp db

Sürekli güncellemeler ile ilgili “Dosya ve veritabanı yedeğinizi almayı unutmayın” diye uyarırım. WP-CLI bu konuda da size yardımcı olabiliyor. Daha bir çok veritabanı becerisinin yanı sıra db export alt komutu ile veritabanınızın yedeğini dışarı aktarabilirsiniz.wp-config.php dosyanızda bulunan DB_HOST, DB_NAME, DB_USER ve DB_PASSWORD bilgilerini kullanarak mysqldump işlemi gerçekleştirir.

wp db export

Yukardaki gibi hiç bir ekstra parametre verilmeden komut çalıştırılırsa {veritabanı_adi.sql} biçiminde bir isimle bulunduğunuz klasöre yedek dosyası oluşturulur.

Yine bakım işlemleri kapsamında veritabanı tamiri ve optimizasyonu için aşağıdaki alt komutları kullanabilirsiniz;

  • wp db check: Veritabanının o anki durumunu gösterir.
  • wp db repair: Veritabanını tamir eder.
  • wp db optimize: Veritabanını optimize eder.

1.2.0 yenilikleri

En çok öne çıkan yenilik, artık WP-CLI’nin yeni bir logosu var. Yazının en başında gördüğünüz logo.

Teknik olarak en çok öne çıkan yenilik ise komutların ayrı paketlere bölünmüş olması. Artık wp-cli/wp-cli deposunda sadece çatı bulunuyor, komutlar wp-cli GitHub kullanıcısının depoları olarak yer alıyor. Eğer sadece kullanıcıysanız bu değişiklik sizi etkilemiyor. Daha çok geliştiricilerin işine yarayacak önemli bir değişiklik olmuş.

İlk kez katkıda bulunmak isteyenler için de özel bir etiket belirlemişler. good-first-issue ile etiketlenen konular, WP-CLI geliştirmesine katkıda bulunmak isteyen fakat nereden başlayacağını bilmeyenler için bir albeni oluşturuyor. Geliştiricilerin geliştirme ortamına ısınması, projeye dahil olabilmeleri için özenle seçilmiş konular yer alıyor.

Yeni eklenen komutlar ve bir çok komut güncellemesi de yenilikler arasında. Daha fazla bilgi için 1.2.0 sürümü duyuru yazısını inceleyebilirsiniz.

Bitirirken

WP-CLI hakkında bir başlangıç yazısı yazmak ve 1.2.0 sürümünü duyurmak istedim. Belki kullananı çok olabilir fakat Türkçe kaynak bulmak oldukça zor. Neyse ki WP-CLI sitesinin kendisi Mustafa Uysal’ın çabaları sayesinde Türkçe dil desteği barındırıyor.

WP-CLI hakkında bulabildiğim bir kaç yazıya bu bağlantılardan ulaşabilirsiniz;

WordPress konusunda destek ihtiyacınız varsa Ada’nın özel çözümlerine başvurabilirsiniz.