Bir önceki yazıdaki add_filter fonksiyonuna benzeyen add_action
fonksiyonu WordPress tarafından gerçekleştirilen bir eylem anında tetiklenen bir fonksiyona eklemeler yapar. Buna örnek olarak yazınızı yayınladığınız anda işleme giren publish_post()
fonksiyonunu gösterebiliriz. Bu fonksiyon siz Yayınla butonuna bastığınızda işleme alınır.
add_action kullanımı;
Codex sayfasında anlatılan kullanım şu şekildedir;
<?php add_action( $hook, $function_to_add, $priority, $accepted_args ); ?>
Kod içindeki tanımlar da şunları açıklar;
$hook
: Genişletilecek ve ekleme yapılacak fonksiyonun adı.$function_to_add
: Ekleme yapacak fonksiyonun adı.$priority
: Filtre uygulanırken gözlenecek öncelik -sayısal değerdir- (boş bırakılırsa 10 değeri işlenir)$accepted_args
: Kısa Kod (Shortcode) gibi alanlarda ve fonksiyonun kullanabileceği ekstra değerleri tanımlamak için kullanılır
add_action kullanımı için örnek;
Yukarıda bahsettiğim üzere add_action
fonksiyonu var olan bir fonksiyona yeni bir eylem, görev ekler. Aşağıda göreceğiniz fonksiyonda ise yazı yayınlama anında belirtilmiş e-posta adreslerine mail göndermek üzere bir fonksiyon yazıp, bunu yeni yazı yayınlama butonuna bastığımıza aktif olması için publish_post
fonksiyonunu genişletiyoruz.
functions.php
dosyasında kullanılması gerekmektedir. Bu dosya temanızın en önemli dosyası olduğundan lütfen işlem yapmadan önce yedek alınız. Bu dosya yol olarak wp-content/themes/temanızın-adı/ yolunda bulunur.function arkadaslara_mail_at( $post_ID ) { $arkadaslar = 'fatih@example.org, berkay@example.org'; wp_mail( $arkadaslar, "Serkan yeni bir yazı yazdı", 'Yeni bir yazı yazdım, hani belki ilginizi çeker dedim : http://blog.example.com' ); return $post_ID; } add_action( 'publish_post', 'arkadaslara_mail_at' );
Bu örnekteki kodu temanızın functions.php
dosyasyına ekleyebilir, test edebilirsiniz.
Selametle