WordPress ile bir web uygulaması oluşturmak söz konusu olduğunda, güçlü API'leri bunu çok daha kolaylaştırır. Ekleme veya alma veri seçeneklerle API gerçekten karmaşık değil. Ama bazen saklamamız gerekir. veri son kullanma tarihi olan geçici.

WordPress bir Caching yoluyla sezgisel geçici "(Geçici veya İngilizce) bunun yapılmasına izin veren, yani depolama veri son kullanma tarihi olan geçici. Geçici durumları kullanacağız, bu yüzden neden bu WordPress API'sine yeni bir göz atmayayım diye düşündüm.

WordPress Kodeksine göre:

Transients API, Options API'ye çok benzer, ancak önbelleğe alınmış bilgileri geçici olarak depolamak için wp_options veritabanı tablosunu kullanma sürecini basitleştiren bir sona erme süresi özelliği eklenmiştir. .

Bu seride, geçici olaylar, geçici verileri depolayarak bir eklentiyi etkinleştirdiklerinde kullanıcıları ana sayfaya yönlendirmenin etkili bir yoludur.

Bu eğiticide, Transient API kavramını keşfedeceğiz (geçici) WordPress ve Seçenekler API'sinden farkı.

Geçici API

Geçici ürünler bize özel bir ad vererek önbelleğe alınmış bilgileri geçici olarak saklama yolları sağlar (anahtar / değer çiftleri) ve son kullanma süresi. Ayarlanan zaman sınırı bittiğinde, geçici olaylar sona erer ve kaldırılır. Bu geçişler performansı iyileştirir ve web uygulamasının genel performansını hızlandırır.

Ama soru ortaya çıkıyor: Son kullanma süresi "Geçici Akımlar" ın tek avantajı mı?

Cevap hayır ! API seçenekleri aynı veri depolama, temizlik ve erişim amacına hizmet etmesine rağmen, büyük bir veri kümesiyle mümkün olan en iyi performansı sağlayamaz.

Son kullanma tarihi eklendiğinde, geçici olaylar, verileri geçici olarak depolamak için daha uygun hale gelir. Daha az sayıda web isteği sağlamak için, geçici veriler, verileri geleneksel WordPress veritabanı yerine örneğin Memcached gibi hızlı bellekte depolama yeteneğine sahiptir. Ayrıca, Geçici Olayların doğaları gereği hızlandırıldığı da not edilmelidir. Caching klasik seçeneklerin olmadığı eklentiler. Kodekste belirtildiği gibi:

Örneğin bir Memcached eklentisi, WordPress geçici değerlerini veri tabanı yerine hızlı bellekte saklayacaktır. Bu nedenle, geçici süreler süresi dolması veya herhangi bir zamanda sona ermesi gereken verileri depolamak için kullanılmalıdır. Geçicilerin de veritabanında bulunmaları beklenmemelidir, çünkü başka bir yerde saklanabilirler.

Bu nedenle, süresi dolan veya belirli bir süre sonra kaldırılan bir özelliğe ihtiyacınız olduğunda, seçenekler yerine geçici durumları kullanın.

"Geçici Akımların" Kullanımı

Geçici olaylar çok basit bir arayüz ile çalışır. Bunlarla üç temel işlevi gerçekleştirebilirsiniz:

  • «İşleviyle veri oluşturma / güncelleme set_transient »
  • «İşleviyle verileri kurtarın get_transient »
  • İşleviyle geçici olayları silin " delete_tansient »

Bu üç temel işlem, bir uygulamanın performansını hızlandırmanıza yardımcı olabilir.

1 - Bir geçişin oluşturulması / güncellenmesi

İşlevi kullanın  set_transient () başak oluşturmak veya güncellemek için. Bu fonksiyon üç parametre alır:

  • Anahtar: (type string) Geçiciin adı. En fazla 172 karakterden oluşmalıdır.
  • Değer: (karışık tür) Bu, depolanması gereken verilerdir. Belki bir PHP değişkeni veya bir dizi nesnesi.
  • Sona erme: (int türü) saniye cinsinden ömür. Varsayılan 0 (Son kullanma tarihi yok).

Paket Servis: Belirlediğiniz son kullanma tarihi, geçici olayın depolanacağı dönemdir. Bu sürenin sonunda geçici durum kaldırılır. Ancak geçici de bu tarihten önce kaldırılabilir.

Önbelleğin bir parçası olduğu için son kullanma süresinden önce kullanıcı tarafından silinebilir.

Öyleyse kendinize, zaman aşımı süresinin geçici bir hayattan asla geçmeyecek bir sınır olduğunu söyleyin.

<?php set_transient( string $transient, mixed $value, int $expiration ) ?>

İlk iki parametre bir çift anahtar - değer Ve zorunludur, azami son kullanım süresini ayarlayan üçüncü parametre isteğe bağlıdır.

İşte pratik bir örnek:


geçici Zaman sabiti

Yukarıdaki örnekte benai üçüncü parametrede 60 saniyeyi ayarlar; bu, geçici olayın kaldırılması gereken zaman aşımı süresini ayarlar. Yukarıdaki örneğe göre nesne _welcome_redirect_wpw  Yaşamın 60 saniyesini aşamaz.

WordPress 3.5'te, zamanı kolayca ifade etmek için birkaç sabit tanıtıldı. Bu sabitler kodu daha eksiksiz ve kesin hale getirir. İşte liste:

MINUTE_IN_SECONDS = 60 (saniye) HOUR_IN_SECONDS = 60 * MINUTE_IN_SECONDS DAY_IN_SECONDS = 24 * HOUR_IN_SECONDS WEEK_IN_SECONDS = 7 * DAY_IN_SECONDS YEAR_IN_SECONDS_IN = 365SEC GÜN

2 - Bir geçici durumun kurtarılması

İşlev aracılığıyla bir değer kaydettikten sonra  set_transient ()işlevini çağırarak değeri alabilirsiniz.  get_transient ().

Geçici $ geçici olgusunun anahtarı olan tek bir parametre alır ve (karma tiptransient) değer.

Standart format aşağıdaki gibidir:


Örneğimizde, değer şöyle alınır:


Yeterince basit? Ancak geçici yoksa veya süresi dolduysa ne olur? Durum buysa, işlev  get_transient () yanlış bir değer verir.

Bir geçici olayın değerlerinin alınmasını değiştirirken kimlik operatörünü (===) kullanmanızı tavsiye ederim.

3 - Bir geçişin kaldırılması

Süresi geçmeden geçici olayları kaldırmak isteyebileceğiniz durumlar olabilir. İşlevi delete_transient () yardım edeceksin. Biçimi işleve benzer get_transient ().

Geçici $ geçici olgusunun anahtarı olan tek bir parametre alır ve geçici durumu kalıcı olarak kaldırır.

İşte genel format:


Bizim durumumuzda, biz böyle kaldırabilirsiniz:


Geçici Olayların kullanımları

Geçici şeyler bir şeyi önbelleğe almak için kullanılabilir (tam widget için temel veriler). Piyasaya sunulduğundan beri, geçici projeler farklı web projelerinde kullanılmıştır. Geçicilerin bazı pratik kullanımları:

  • Bunları eklentinizin ana sayfasında kullanabilirsiniz.
  • Onları, en iyi yorum verilerini listeleyen bir kenar çubuğu widget'ında kullanabilirsiniz.
  • Geçici olan WordPress gezinme menülerini hızlandırabilirsiniz.
  • Etiketleri geçici olarak önbellekleyebilirsiniz.

Bu eğitim için bu kadar. Umarım artık WordPress'te Geçici API'nin nasıl kullanılacağını bilirsiniz.