WordPress add_filter ve add_action işlevleri, temel bilgiler.

Yayınlanan: 2021-08-24

Açıklama: Bu gönderi bağlı kuruluş bağlantıları içerir. Bu gönderideki ürünlerin bağlantılarına tıkladığınızda tazminat alabilirim. Reklam Politikamın açıklaması için bu sayfayı ziyaret edin. Okuduğunuz için teşekkürler!

İçindekiler

  • WordPress add_filter ve add_action işlevleri nelerdir?
  • Peki, WordPress'te “Kanca” tam olarak nedir?
  • Kancalar, filtreler ve eylemler arasındaki fark nedir?
  • WordPress'te do_action ve add_action arasındaki fark nedir?
  • Eylem Kancaları ve Filtre Kancaları arasındaki fark nedir?
  • WordPress'te filtreler ne yapar?
  • WordPress'te eylemler ne yapar?
  • Bir WordPress eklentisini düzenlerken add_filter'dan önce bir add_action kullanabilir miyim?
  • Peki WordPress'te add_filter kancaları ile add_action kancaları arasındaki gerçek fark nedir?

WordPress add_filter ve add_action işlevleri nelerdir?

Üzerinde sadece bir veya iki ince ayar yapabilseydiniz mükemmel olacak bir eklenti veya tema edindiniz mi? Bununla birlikte, bu iki ince ayar, sadece biraz kod eklemenizi, hatta belki bir kısa kod eklemenizi gerektirecektir.

Ancak bunu yapmadan önce, neredeyse mükemmel şekilde kodlanmış bir eklentiyi veya temayı tam bir karışıklığa dönüştürmeden önce, add_filter ve add_action arasındaki temel kavramları, farklılıkları ve WordPress'te nasıl çalıştıklarını anlamanız gerekir.

WordPress'teki bir "add_action", tetikleyici "kanca" oluşturmak için kullandığınız şeydir. Bir şey olduğunda, başka bir şey yapın.

Verileri "bağlamak", yani değiştirmek/değiştirmek için bir "add_filter" kullanılır. Örneğin, [bir kod] varsa, onu başka bir genişletilmiş kodla değiştirin.

"Kanca", belirli bir filtre veya eylem için bir "işlev" veya "yöntem"dir. Aşağıdaki "kancalar" hakkında daha fazla bilgi.

WordPress, eklentilerin çalışma zamanı sırasında çeşitli dahili veri türlerini değiştirmesine izin vermek için filtre kancaları sunar. Bir eklenti, bir geri aramayı bir filtre kancasına bağlayarak verileri değiştirebilir. Filtre daha sonra uygulandığında, her bağlı geri arama öncelik sırasına göre çalıştırılır ve yeni bir değer döndürerek bir değeri değiştirme fırsatı verilir.

  • Eylemler, çıktıyı yürüten PHP işlevleridir.
  • Filtreler, çıktıyı döndüren PHP işlevleridir.

Eylemleri ve filtreleri kullanan herhangi bir eklentiyi kodlarını değiştirmeden genişletebiliriz. Kendi temamıza veya eklentimize filtreler ve eylemler ekleyerek. Bunların WordPress'te nasıl çalıştığı hakkında daha fazla bilgi verelim.

Peki, WordPress'te “Kanca” tam olarak nedir?

Kancalar, bir kod parçasının belirli, önceden tanımlanmış noktalarda başka bir kod parçasıyla etkileşime girmesi/değiştirmesi için bir yoldur. Eklentilerin ve temaların WordPress Core ile nasıl etkileşime girdiğinin temelini oluştururlar, ancak WordPress Core tarafından da yaygın olarak kullanılırlar.

İki tür kanca vardır: Eylemler ve Filtreler. Her ikisini de kullanmak için “ Geri Aramaolarak bilinen özel bir işlev yazmanız ve ardından belirli bir eylem veya filtre için bir WordPress kancasıyla kaydetmeniz gerekir. Kaynak: WordPress.org .

Kancalar, filtreler ve eylemler arasındaki fark nedir?

Yukarıda bahsedildiği gibi, "kancalar" temelde filtreler ve eylemler için ortak addır. Her ikisi de işlevlerin normal davranışını değiştirmek içindir.

Programlı bir bakış açısıyla konuşursak, WordPress kaynak koduna bir “eylem” eklemek, bir “filtre” eklemekle aynı şey olduğundan görebileceğiniz gibi, büyük bir fark yoktur .

Fark, bunların nasıl kullanıldığıdır. Bir işlevin davranışını tamamen değiştirmek veya mevcut bir işleve bir şey eklemek için bir "eylem" kullanırsınız.

Bir fonksiyonun veya değişkenin sonucunu değiştirmek için bir "filtre" kullanırsınız.

WordPress'te do_action ve add_action arasındaki fark nedir?

Bir "do_action", bir "eylem kancası" kaydederken "add_action", kayıtlı kancaya bir geri arama işlevi ekler.

Eylem Kancaları ve Filtre Kancaları arasındaki fark nedir?

Eylem Kancaları

"Eylem Kancaları", WordPress'in çekirdeği veya bazı eklentileri veya temaları, belirli bir görevi veya "eylem" yürütmek için kodunuzu kendi kodlarının belirli bir noktasına ekleme fırsatı verdiğinde kullanılmak üzere tasarlanmıştır.

Filtre Kancaları

"Filtre Kancaları", "Eylem Kancalarına" çok benzer şekilde davranır, ancak amaçlanan kullanımları bir değer almak ve potansiyel olarak değerin değiştirilmiş bir sürümünü döndürmek.

Bir "Filtre Kancası" aynı zamanda "Eylem Kancası" gibi kullanılabilir, yani, kanca çağrıldığında yapmanız gerekenin bu olduğunu varsayarak, global bir değişkeni değiştirmek veya bir HTML oluşturmak için.

WordPress'te filtreler ne yapar?

Bir "filtre" aldığı bilgiyi alır, değiştirir ve geri döndürür. Başka bir deyişle, bir şeyi filtreler ve daha fazla kullanım için kancaya geri iletir.

Bu nedenle, bir şeyi belirli bir şekilde değiştirmek için bir filtre kullanılır, böylece değişiklik daha sonra kod tarafından kullanılır.

WordPress'te eylemler ne yapar?

Bir "eylem" aldığı bilgiyi alır, kodlamasında verilen talimatları uygular ve sonra hiçbir şey döndürmez. Temel olarak, bir şeye etki eder ve sonra çıkar, çağıran kancaya hiçbir şey geri döndürmez.

Bir eylem, bir şey yapmak için kod akışını keser ve ardından hiçbir şeyi değiştirmeden normal akışa geri döner.

Dolayısıyla, "filtreler" parametre veya talimat kümeleri olduğunda, "eylemler" talimatların yürütülmesidir.

Bir WordPress eklentisini düzenlerken add_filter'dan önce bir add_action kullanabilir miyim?

add_action() ve add_filter()'ı hangi sırayla kullandığınızın bir önemi yoktur.

Önemli olan ilgili do_action() ve application_filters() öğelerinin çağrıldığı sıradır.

Bu nedenle, örneğin "apply_filters" ('wp_insert_post_data') "do_action"('save_post') işleminden önce çalıştırılırsa, çalışmayacaktır. Peşinde olduğunuz sonuçları elde etmek için başka bir yol düşünmeniz gerekecek.

Peki WordPress'te add_filter kancaları ile add_action kancaları arasındaki gerçek fark nedir?

Gerçekte, "Filtre Kancaları", hemen hemen "Aksiyon Kancaları"nın bir üst kümesidir. "Filtre Kancaları", "Aksiyon Kancalarının" yapabileceği her şeyi ve biraz daha fazlasını yapabilir. Geliştiricinin bir "Filtre Kancası" ile yaptıkları bir "Eylem Kancası" ile bir değer döndürme sorumluluğu olmamasına rağmen.

"Filtre kancaları" temel olarak bir görevin parametrelerini tanımlarken, "Eylem kancaları" görevleri yürütür. "add_filter" kancaları ve "add_action" kancaları arasındaki farklar hakkında daha fazla bilgi için, WordPress.org'daki geliştirici bölümündeki bu resmi WordPress belgelerine bakın.