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.