it-swarm.com.de

So überschreiben Sie vorhandene Plugin-Aktionen mit neuen Aktionen

Ich benutze ein Plugin. Es hat eine Aktion wie diese.

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

Ich schreibe ein Modul für dieses Plugin. Also muss ich diese alte Aktionsfunktion mit meiner neuen Aktionsfunktion überschreiben.

Das ist meine neue Funktion.

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

Ich möchte diese old_action-Funktion mit Hilfe von Hooks durch meine new_action-Funktion ersetzen. Kann mir jemand helfen?

Vielen Dank

17
Giri

Sie können die Funktion remove_action() folgendermaßen verwenden:

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

Es ist wichtig zu beachten, dass, wenn old_action mit einem Prioritätsparameter hinzugefügt wurde, Sie dies zum remove_action-Aufruf hinzufügen müssen, da es sonst nicht entfernt werden kann. Es gibt andere Implikationen, wenn old_action innerhalb einer Klasse hinzugefügt wurde. Siehe hier für mehr Infos.

30
Tomas Buteler