WordPress kancaları nedir? Eylemler ve filtreler, işlevselliğin genişletilmesine nasıl yardımcı olur?

Yayınlanan: 2018-06-13
WordPress Hooks | LearnWoo

Son güncelleme - 9 Ekim 2020

WordPress üzerinde daha önce çalıştıysanız, ' Hook ' kelimesine birçok kez rastlamış olmalısınız. Eklentiler ve temalar oluşturmak isteyen bir WordPress geliştiricisiyseniz, geliştirmeniz için WordPress kancaları çok önemlidir.

Ama Kancalar tam olarak nedir?

WordPress.org kodeksine göre, “ Hook'lar, eklentinizin WordPress'in geri kalanına 'bağlanmasına' izin vermek için WordPress tarafından sağlanır; yani, eklentinizdeki işlevleri belirli zamanlarda çağırmak ve böylece eklentinizi harekete geçirmek."

Kancalar genel olarak bir şeyi diğerine bağlar. WordPress terminolojisinde, kullanıcı tanımlı kodu mevcut WordPress çekirdeği koduna bağlar (bağlar).

Şunu netleştirelim.

WordPress, bazı varsayılan işlevlerle oluşturulmuştur. Onunla ilişkili varsayılan davranış ve değerlere sahiptir. Kancalarla, bu varsayılan davranışı değiştirebilir ve mevcut değeri değiştirebilir, böylece WordPress ortamını ihtiyaçlarınıza göre özelleştirebilirsiniz.

Kanca Çeşitleri

İki tür Kanca vardır:

  1. Eylem Kancaları – Yürütmenin varsayılan akışını değiştirerek yürütmenin bir noktasında yürütmek için kullanılır. İşte WordPress Eylem kancalarının bir listesi.
  2. Filtre Kancaları – Eylem kancalarından biraz farklı olan Filtre kancaları, varsayılan WordPress verilerini değiştirmek ve kullanıcıya ön uçta gösterilmeden veya veritabanında saklanmadan önce özel değerle değiştirmek için kullanılır. WordPress Kodeksinde Filtre kancalarının bir listesi bulunabilir.

Temel olarak, kancalar kendi içinde önceden tanımlanmış işlevlerdir. Bu nedenle, kancalarla ilişkili iki tür işlev şunlardır:

  1. Eylem işlevleri – Bu işlevler, bir blog yayınlandığında, bir sayfa yüklendiğinde vb. olaylarda yardımcı olur.
    Aşağıda Eylem işlevlerinden bazıları verilmiştir:

    • add_action()
    • did_action()
    • yapıyor_eylem()
    • do_action()
    • do_action_ref_array()
    • has_action()
    • kaldır_aksiyon()
    • remove_all_actions()
  2. Filtre işlevleri – Her filtre işlevi bir değer döndürür ve onu varsayılan WordPress verileriyle değiştirir.
    Filtre işlevleri şunları içerir:

    • add_filter()
    • application_filters()
    • application_filters_ref_array()
    • akım_filtresi()
    • yapıyor_filtre()
    • has_filter()
    • remove_all_filters()
    • kaldır_filtre()

Bir İnfografik

Kancaların nasıl çalıştığını daha iyi anlamak için aşağıdaki bilgi grafiğini inceleyin.

WordPress Hooks | Info-graphic on how WordPress Hooks work
WordPress Kancalarının nasıl çalıştığına dair bilgi grafiği

Yukarıdaki bilgi grafiğinde gösterildiği gibi, Eylem ve Filtre işlevleri, WordPress'in temel kodunu değiştirmek için ilgili kancaları kullanır.

Kanca nasıl görünür?

Tipik bir Eylem kancası aşağıdaki formu alır:

 add_action ('hook', 'your_custom_function_name', [priority], [accepted_parameters]);
işlev sizin_özel_işlev_adınız()
{
   // Özel kodunuz
}

Kanca kancanın adı olduğunda, özel_işlev_adınız özel kodunuz, kancanın nasıl yürütülmesi gerektiğini belirten isteğe bağlı öncelik parametresi, ek parametreleri belirten kabul edilen parametreler ve özel kod ile işlevin adıdır. bu işlev çağrısı ( add_action()) , kod parçacığının altında veya üstünde olabilir.

Bir Filtre kancası aşağıdaki biçimdedir:

 add_filter( 'filtre', 'özel_fonksiyon_adınız', 'öncelik', 'kabul edilen_args');
function your_custom_function_name($değişken)
{
   // Özel kodunuz
   dönüş;
}

add_filter() bir olduğunda Filtre kancası işlevlerinden filtre , kullanacağınız filtrenin adıdır, özel_işlev_adınız kullanıcı tanımlı işlevinizin adıdır, öncelik parametresi kancanın yürütme sırasını, kabul edilen_args iletilecek bağımsız değişkenleri ve özel zorunlu dönüş değerine sahip kod.

Tıpkı WordPress gibi, WooCommerce için de kancalar mevcuttur. Bu kancalar, eklentiler, temalar geliştirmek ve WooCommerce Checkout sürecini özelleştirmek için yaygın olarak kullanılır.
WooCommerce Kancalarını okuyun: WooCommerce kancalarını ayrıntılı olarak anlamak için WooCommerce belgelerindeki eylemler ve filtreler.

Gösteri

Bazı örnek kod parçacıklarını kullanarak kancaları anlayalım.

Eylem Kancası ve İşlevi

 // Eylem kancası ekleme
işlev my_action_hook() {
echo "<p align='center'>Bu bir Eylem Kancası Örneğidir</p>";
}
add_action('get_header', 'my_action_hook');

Yukarıdaki kod parçacığında, 'my_action_hook' özel işlevin adıdır, 'add_action' Eylem işlevlerinden biridir ve şablon başlığını özelleştirmek için 'get_header' kullanılır. Verilen kod parçacığında, web sitesinin başlık bölümünde 'Bu bir Action Hook Demo'dur' metnini görüntülüyoruz.

Uygulanan kod parçacığı değişikliklerini gösteren örnek bir ekran görüntüsü aşağıda gösterilmiştir.

WordPress Hooks | Action hook example
Eylem kancası örneği

Filtre Kancası ve İşlevi

 // Filtre kancası ekleme
add_filter('woocommerce_get_price_html','my_filter_hook');
işlev my_filter_hook($fiyat){
return 'Sadece' için.$fiyat;
}

Yukarıdaki kod parçacığında, 'woocommerce_get_price_html' ürün fiyatını almak için bir WooCommerce kancasıdır, 'my_filter_hook' kullanıcı tanımlı filtrenin adıdır ve '$price' kullanıcı tanımlı bir değişkendir. Kod parçacığı, ürün fiyatına "Sadece" ön ekini ekler.

Aşağıdaki ekran görüntüsü, kod parçacığının WooCommerce mağazamızı nasıl etkilediğini göstermektedir.

WordPress Hooks | Filter hook example
Filtre kancası örneği

Bu sadece basit bir örnek, Hooks ile başarabileceğiniz birçok şey var.

Eylemler ve filtreler, işlevselliğin genişletilmesine nasıl yardımcı olur?

  1. Hooks kullanmanın birincil avantajı, çekirdek WordPress kodunun özelleştirilmesine yardımcı olmasıdır.
  2. Geliştirmedeki herhangi bir değişiklik, değişiklik kodda birden çok kez olmak yerine yalnızca minimum düzeyde olduğundan dikkatli bir şekilde izlenebilir.
  3. Yeni eklenti geliştirme, deneme ve test etme yöntemiyle çok daha kolay hale getirildi.
  4. Tema geliştirme için, ana temayı etkilemeden alt temalar oluşturabilir ve kancalarla oynayabilirsiniz.
  5. Herhangi bir referans için anlaşılır bir yapıya ve ayrıntılı belgelere sahip basit, kullanımı kolay WordPress teklifi.
  6. En popüler WordPress e-Ticaret eklentisi olan WooCommerce'i destekler. WooCommerce fiyatlandırma eklentileri, ürün fiyatlarını, fiyat hesaplamalarını kapsamlı bir şekilde değiştirir ve WooCommerce kancalarını kullanarak dinamik fiyatlandırma ve indirimler sunar. Sipariş detayları, ürün bilgileri, gönderi detayları arasında özel kancalar kullanılarak dokunulabilir.

Sonuç Yorumları

WordPress Kancaları, eklenti ve tema geliştirme için temel mekanizmadır. Web sitesini özelleştirmek için mevcut WordPress kodunu değiştirmek için yaygın olarak kullanılırlar. Kancaların bir takım avantajları olsa da, her özel kancanın benzersiz olduğundan ve aynı adı taşıyan başka bir kanca ile örtüşmediğinden emin olunmalıdır. Böyle bir durumda bile, ihtiyaçlarınıza göre yürütme için kancalara öncelik atayabilirsiniz.

WooCommerce mağazanızı özelleştirmeye ilişkin ipuçları için WooCommerce Özelleştirme makalelerimize göz atın.

Veya daha şaşırtıcı makaleler için LearnWoo'yu keşfetmeye devam edin .