WP-CLI v2 – WordPress Sitenizi Komut Satırı İle Yönetin

W

wp-cli nedir

Çıkış tarihinden itibaren WordPress, en soyut sistem olan, nesne yönelimli PHP ile  basit bir kod tabanı kullanılarak oluşturulmuştur. Ancak son birkaç yılda, bu taban geliştirilmeye başlandı. Birim testinden CSS ön işlemlerine ve komut satırı araçlarına kadar giderek daha fazla geliştirici dostu araçlar ortaya çıkıyor. Bu makalede, geliştiricilerin favori aracına göz atacağız: WP-CLI.

WP-CLI nedir?

WP-CLI, bir WordPress sistemi için ortak ayarları yönetmek amacıyla geliştiriciler için bir komut satırı aracıdır. Kullanıcıları, yayınları, kategorileri ekleyebilir / kaldırabilir, test verilerini ekleyebilir, veritabanında arama yapabilir ve değiştirebilir, performans sorunlarını gidermeye yardımcı olabilir ve çok daha fazlasını yapabilirsiniz!

WP-CLI, on yıldan fazla bir süredir açık kaynak kodlu bir proje olarak varlığını sürdürmüştür ve 2003’ten beri Daniel Bachhuber tarafından proje devam ettirilmektedir. WP-CLI’nin birincil hedefi, WordPress geliştiricisinin iş akışlarını hızlandırmaya yardımcı olmaktır.

Son dönemde WP-CLI çok daha ilgi çekici bir hal aldı! Artık, Trellis ve Bedrock gibi diğer açık kaynak projeleri için bir gereklilik haline geliyor. Bu tarz projelerde hem zamandan hemde iş gücünden tasarruf etmemizi sağlıyor. Ocak 2017 itibariyle WP-CLI resmi olarak WordPress.org’a taşındı ve şu anda Alain Schlesser tarafından geliştiriliyor.

WP-CLI v2, 8 Ağustos 2018’de yayınlandı. Yeni bir geliştirme olduğu için bu makalemizde WP-CLIv2’ye yer vermek istedik. Yakında dönemde Hostazor olarak tüm WordPress Hosting ürünlerimizde WP-CLIv2 aracını varsayılan olarak konsol talep eden müşterilerimize sunacağız. Fakat öncesinde stabilizasyon testlerini tamamlamamız gerekiyor.

WP-CLI 

WP-CLI v2.0.0 sürümü ile  minimum PHP gereksinimi, PHP 5.4’e yükseltildi. Bu iyi bir hamle olsa da, en azından PHP’nin desteklenen bir sürümünü (5.6 veya üstü) çalıştırmanızı öneririz. Güvenlik ve performans nedenleriyle PHP 7.2, Hostazor olarak önerdiğimiz sürümdür.

Başlamak için WP-CLI’yi kurmanız gerekecek – çok basit bir işlem. Linux ve OSX için adımlar şu şekildedir, bu üç komutu birbiri ardına uygulayın:

curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
chmod +x wp-cli.phar
sudo mv wp-cli.phar /usr/local/bin/wp

Bir şeyler ters giderse veya Windows kullanıyorsanız, temel talimatlara veya alternatif kurulum yöntemlerine başvurun.

Kurulum tamamlandığında, wp -info komutunu uygulayabilmeli ve anlamlı bir yanıt alabilmelisiniz.

WP-CLI sunucunuza yüklemek istiyorsanız, işlem aynıdır.Yukarıdaki komutları uygulayarak WP-CLIv2’yi yükleyebilirsiniz. Şu anda hangi sürümü çalıştırdığınızdan emin değil misiniz? Öğrenmek için wp cli version komutunu uygulayabilirsiniz.

WP-CLI’nin Temel Fonksiyonları

Komut satırından WordPress’e erişim, kendi başına güçlüdür, ancak bash komut dosyalarını kullanırken daha da fazla kontrol ve hız ile zaman kazancı sağlar.

Bash betikleri, tek bir komutla bir komut dizisi çalıştırmanıza izin verir. Bash install-and-setup.sh yazıp aşağıdaki sonucu alabilirsiniz:

  • WordPress’i İndir
  • Wp-config.php oluştur ve doldur.
  • Veritabanını oluştur.
  • WordPress’i yükle.
  • İhtiyacınız olan eklentileri kurun ve etkinleştirin.
  • Bir temayı kurun ve etkinleştirin.
  • Test içeriğini indirin ve ekleyin.

Bunlar, bir proje için yeni bir test ortamı oluşturmak adına atmanız gereken adımlar olacaktır. Normalde, özellikle birkaç eklenti varsa, en azından 5-10 dakika sürer. Tek bir komut vermek belli ki çok daha hızlıdır.

Genel WP-CLI Komutları

Terminalde çalışıyorsanız, WP-CLI hakkında sizin için özel bir şey yoktur. Komutlar her zaman wp ile başlar, bunu bir komut ve alt komut izler, ardından gerekli ve isteğe bağlı parametreler izler.

wp command subcommand requiredparam --optionalparam --optionalparam2=value

Bunun gerçek bir komutla nasıl çalıştığını görmek için bir tema yükleyelim:

wp theme install twentyseventeen --activate

Bu komut, WordPress kurulumunuzdaki Yirmi Yedinci temayı kuracak ve etkinleştirecektir.

WP-CLI’nın şu anda terminalde bulunduğu dizindeki WordPress kurulumunda çalışacağını unutmayın. Başka bir WordPress kurulumuna gitmek için dizinleri değiştirirseniz, değiştirdiğiniz dizindeki wordpress ile çalışacaktır.

Faydalı Örnekler

Yapabileceğiniz birkaç gelişmiş şey olsa da, bir an içinde başlayabileceğimiz, zaten başlamak için gerekli olan herşeyi yapmanız yeterli. Komut listesine göz atmanızı tavsiye ediyoruz, bazılarını deneyin. Burada bazı yararlı şeylere göz atacağız, daha sonra SSH üzerinden WP-CLI kullanmaya ve bash betikleri denemeye devam edeceğiz.

WordPress’i yükleme

WP-CLI’yi test ortamlarını kurmak için rahatlıkla kullanabilirsiniz:

wp core download
wp core config --dbname=veritabaniadiniz --dbuser=veritabanikullanici --dbpass=vtkullanicisifresi --dbhost=localhost --dbprefix=wp_ --extra-php <<PHP
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
PHP
wp db create
wp core install --url=http://siteadresi.com --title=SiteTitle --admin_user=kullaniciadiniz --admin_password=sifreniz --admin_email=email@adresiniz.com

Bunun ne kadar kısa sürede yapılabildiğini görüyor musunuz? WordPress’in en son sürümü tek komut kullanılarak indirilir. İkinci komut, yapılandırma dosyasını veritabanı erişimi ve sonunda bazı ek PHP komutları ile kurar. Ek betiklerde, test için hata ayıklama seçeneklerinin bulunduğundan emin olur.

Üçüncü komut veritabanını oluşturur (WP-CLI, yapılandırma dosyasından veritabanı erişim bilgisini kullanır) ve son olarak, birkaç parametreyi kullanarak WordPress’i yükleriz.

WordPress Core’u yeniden yükle

WP-CLI kullanarak WordPress ‘i yeniden yükleyebilirsiniz. Aşağıdaki komut, varsayılan temalar ve eklentiler olmadan WordPress çekirdeğini indirir.

 

wp core download --skip-content --force

WordPress URL’sini değiştir

WordPress linklerinizi değiştirmeniz veya değiştirmek isteyebileceğiniz birçok sebep vardır. Belki de alan adlarını değiştiriyorsunuz, bir alt alana geçiyorsunuz, www’den www olmayanlara, güncelleme yapan dosyalara ve hatta HTTP’den HTTPS’ye geçiş yapıyorsunuz. Durum ne olursa olsun, bunun için wp seçeneği güncelleme komutunu kolayca kullanabilirsiniz. İşte bir örnek aşağıda:

wp option update home 'http://alanadiniz.com'
wp option update siteurl 'http://alanadiniz.com'

Mevcut Eklentilerin Listesi

Bir sitede yüklü mevcut eklentilerin bir listesini almak için sadece aşağıdaki komutu kullanın. Bu örnekte, Schema ve Yoast SEO eklentisinin kurulu olduğunu görebiliyoruz. Mevcut bir güncelleme varsa ve mevcut sürüm de durumu (etkin / devre dışı) olarak görünür.

wp plugin list

Birden Fazla Eklenti Yükleme

Çoklu eklentileri kurmak için sadece parametrelere güvenebilirsiniz. İşte 3 eklentiyi indirip etkinleştiren bir örnek:
wp plugin install advanced-custom-fields jetpack ninja-forms --activate

Eklenti adlarının depodaki adlarından geldiğini unutmayın. Bunu anlamanın en kolay yolu, sayfalarını ziyaret etmek ve URL’ye bakmak ya da terminalde bir liste verecek olan wp eklenti arama komutunu kullanmaktır.

Gerektiğinde, –version özelliğiyle eski eklenti sürümlerini de yükleyebilirsiniz.

wp plugin install wordpress-seo --version=4.8 --activate

Bir eklenti geliştiriyorsanız  veya bir premium eklenti kullanıyorsanız uzak ftp yada depolardan eklenti yükleyebilirsiniz. Aşağıdaki komut, varsayılan eklenti deposundan ve bir Amazon S3 sunucusundan iki eklentiyi yükler.

wp plugin install advanced-custom-fields jetpack https://d1qas1txbec8n.cloudfront.net/wp-content/uploads/2015/06/23073607/myplugin.zip --activate

Bir ya da daha fazla eklentiyi devre dışı bırakma

Tek bir eklentiyi devre dışı bırakmak için aşağıdaki komutu çalıştırabilirsiniz.

wp plugin deactivate wordpress-seo

Bütün eklentileri devre dışı bırakmak için ;

wp plugin deactivate --all
Yukarıdaki bu komut, uyumluluk sorunları gibi durumlarda ve tüm eklentileri devre dışı bırakmanız gerektiğinde kullanışlı olabilir. Ardından,eklentileri tek tek etkinleştirerek test edebilirsiniz.

Eklentileri güncelleme

Ayrıca WordPress eklentilerini de güncelleyebilirsiniz. Aşağıdaki örnek:

wp plugin update wordpress-seo

Veritabanında Düzenlemeler Yapın!

Bir  veritabanını kopyalayıp yapıştırarak taşımanın zor olmasının başlıca nedenlerinden biri, veritabanının seri hale getirilmiş diziler içermesidir. Http://testsite.com’un tüm örneklerini http://baskatestsitesi.com ile değiştirmeniz gerekiyorsa, dizileriniz anlamlı olmayacaktır çünkü dizi sayısı eşleşmez.

Arama ve değiştirme komutu dizileri önce sıralar, sonra aramayı gerçekleştirir ve değiştirir, sonra dizileri yeniden sıralar. Bunu basit bir komutla halledebilirsiniz:

wp search-replace oldstring newstring

Ek parametreler, –dry-run kullanarak değiştirilecek önizleme dahil olmak üzere, çok daha fazlasını yapmanızı sağlar.

İçe Ya da dışa aktarma

İçeriği WP-CLI ile dışa aktarmanın iki yolu vardır. WordPress dışa aktarma aracının yaptığı gibi bir XML dosyası oluşturabilir veya ham veritabanını dışa aktarabilir / içe aktarabilirsiniz.

wp db export bir SQL dosyası oluşturmak ve dışa aktarmak için yapmanız gereken tek şey aşağıdaki komutu uygulamaktır.

wp db export file.sql

Aynı şekilde dizinde bulunan bir SQL dosyasını da aşağıdaki komutla içe aktarabilirsiniz.

wp db import file.sql

Kullanıcı görevleri ve yetkileri

WP-CLI, wp role komutunu kullanarak oldukça kolay bir şekilde yetkileri yönetebilir. Eklentinizin özel rollerle nasıl çalıştığını test etmek istiyorsanız, ancak eklentinizdeki rolleri gerçekten oluşturmuyorsanız, bu oldukça basit bir şekilde size çözüm sağlar.

wp role create organizer Organizer
wp cap list 'editor' | xargs wp cap add 'organizer'
wp cap add 'organizer' 'manage-events'

Yukarıdaki komutlar yeni bir yetki (Organizatör) oluşturacak, editör yetkisinden tüm yetkileri ekleyecek ve ardından yeni bir yetki ekleyecektir: etkinlik yönetimi.

TESt içeriği oluşturma

Sitenize testler için kullanabileceğiniz örnek içerik ekleyebilirsiniz. WP-CLI’nin içinde yerleşik bir görev var, burada kullanıcılar, şartlar ve mesajlar oluşturacak birkaç işlev var.

wp user generate --count=5 --role=editor
wp user generate --count=10 --role=author
wp term generate --count=12
wp post generate --count=50

wp-cron görevlerini yönetme

WP-Cron görevlerini WP-CLI’de  yönetebilirsiniz. Örneğin, aşağıdaki komut geçerli cron görev  listenizi verecektir.

wp cron event list

Çöpleri temizle

Gereksiz içerikleri aşağıdaki komutla temizleyebilirsiniz.

wp transient delete --all

revizyon içeriklerini temizle

Büyük sitelerin en büyük sorunu, revizyonlar sonrasında arta kalan içeriklerdir. Bu içerikleri aşağıdaki komutla silebilirsiniz.

$ wp post delete $(wp post list --post_type='revision' --format=ids)
Bu yazımızda WP-CLIv2’nin basit fonksiyonlarından ve size ne kadar büyük kazanç sağlayacağından bahsettik. WP-CLI konsol aşıkları için son derece kullanışlı bir araçtır. Geliştiriciler için önemli olan bu aracı testleri tamamladıktan sonra WordPress Hosting hizmetimizde varsayılan olarak sunacağız.
Mutlu bloglamalar!

Yorum Yap

Bir Cevap Yazın

Yazar ; hostazor

Facebook Sayfamız

Bizi Twitter’da takip et

%d blogcu bunu beğendi: