WP-CLI V2 – WORDPRESS SİTENİZİ KOMUT SATIRI İLE YÖNETİN

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 NEDİR?
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’NİN TEMEL FONKSİYONLARI
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 KOMUTLARI
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.

FAYDALI Ö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’İ 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 YENİDEN 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’SİNİ DEĞİŞTİR
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 EKLENTİLERİN LİSTESİ
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

BİRDEN FAZLA EKLENTİ 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
BİR YA DA DAHA FAZLA EKLENTİYİ DEVRE DIŞI BIRAKMA
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.
EKLENTİLERİ GÜNCELLEME
Ayrıca WordPress eklentilerini de güncelleyebilirsiniz. Aşağıdaki örnek:

wp plugin update wordpress-seo

VERİTABANINDA DÜZENLEMELER YAPIN!
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 DIŞ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
KULLANICI GÖREVLERİ VE YETKİLERİ
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 İÇERİĞİ 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ÖREVLERİNİ 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

ÇÖPLERİ TEMİZLE
Gereksiz içerikleri aşağıdaki komutla temizleyebilirsiniz.

wp transient delete –all
REVİZYON İÇERİKLERİNİ TEMİZLE
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!

Hızlı Yanıt Ver