Ich versuche ein Wordpress-Plugin zu erstellen, ich habe ein Plugin gefunden, das oops-Konzepte verwendet, meine Frage ist, warum der zweite Parameter in der Funktion add_action ein Array anstelle eines Funktionsnamens ist
add_action ('admin_menu', array (& amp; $ this, 'my_menu'));
my_menu ist eine Funktion in derselben Klasse, bitte hilf mir
Danke
Weil das zweite Argument ein Rückruf sein muss . (und add_action
verwendet intern call_user_func_array
).
Für Funktionen können wir einfach ihren Namen als String übergeben, aber das können wir mit Objektmethoden nicht machen, oder?
Also wird ein Array mit 2 Elementen übergeben, zuerst das Objekt und dann die Methode, die aufgerufen werden soll: -
array( $object, 'method' )
Oh, und du kannst das unnütze '& amp;' sicher entfernen, PHP4-Tage sind jetzt weg.
@Thomas John, du hast Recht bezüglich des zweiten Arguments in add_action auch in wordpress org hast nichts dazu gesagt, also lass es mich jetzt wissen, wir können Array als zweites Argumentarray übergeben ($ this, 'method').
Beschreibung: Wenn das Objekt eine Klasse erstellt, ruft der Konstruktor automatisch auf und Ihre Aktion wird ausgeführt.
WARUM ES ERFORDERLICH IST in WordPress wie man die Klasse in add_action in kurzer add_action erstellt oder initialisiert, indem man auf eine Klassenüberprüfung unter Beispiel
verweist %Vor%Referenzieren einer Klasse mit add_action ().