Mevcut eklenti eylemini yeni eylemle geçersiz kılma


18

Bir eklenti kullanıyorum. Bunun gibi bir eylemi var.

add_action('publish_post', 'old_action');
function old_action($pid) {
    "code goes here"
    }
}

Bu eklenti için bir modül yazıyorum. Bu yüzden yeni eylem işlevimle bu eski eylem işlevini geçersiz kılmalıyım.

Bu benim yeni fonksiyonum.

function new_action($pid) {
      "code goes here"
        }
    }

Bu old_action işlevini kancaları kullanarak yeni_action işlevimle değiştirmek istiyorum. Biri bana yardım edebilir mi?

Teşekkürler

Yanıtlar:


33

Bu remove_action()işlevi aşağıdaki gibi kullanabilirsiniz :

remove_action('publish_post', 'old_action');
add_action('publish_post', 'new_action');

Old_action bir öncelik parametresi ile eklenmişse, bunu remove_actionaramaya eklemeniz gerektiğini , aksi takdirde onu kaldıramayacağını unutmayın. Old_action bir sınıfa eklenmişse başka çıkarımlar da vardır. Daha fazla bilgi için buraya bakın .


3
Kaldırma eylemi, kaldırdığı işlev eklendikten sonra kaldırma eyleminin çağrılması gerektiği açıklığına sahiptir.
Stephen Harris

2
'after_setup_theme' remove_action için iyi bir yer gibi görünüyor. Bkz: wordpress.stackexchange.com/questions/170663/…
DigitalDesignDj
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.