Hook Priorität in Admin mit benutzerdefinierten Plugin

Wie hier erwähnt, ist admin_init der erste Hook, der beim Zugriff auf WordPress Dashboard ausgetriggers wird.

Aber wenn ich es tgmpa_register habe ich tgmpa_register zuerst gefunden

 add_action( 'admin_init', 'sr_admin_init' ); add_action( 'tgmpa_register', 'sr_register_required_plugins' ); function sr_admin_init(){ // I NEED THIS TO TRIGGER FIRST wp_die("sr_admin_init"); } function sr_register_required_plugins(){ // this triggers first wp_die("sr_register_required_plugins"); } 

Aktionshaken triggers aus:

  1. tgmpa_register
  2. admin_init: definiert eine Variable wie $GLOBALS['admin_page_hooks']

Ich habe einen komplizierten Fall, aber im Allgemeinen muss ich die Variable $GLOBALS['admin_page_hooks'] in sr_register_required_plugins . Aber es funktioniert nicht, weil tgmpa_register zuerst tgmpa_register .

Was soll ich machen?

Solutions Collecting From Web of "Hook Priorität in Admin mit benutzerdefinierten Plugin"

Der Codex-Eintrag auf Ihrer Website ist einfach falsch ! Es gibt eine Menge Hooks, die vor admin_init während Admin-Anfragen admin_init wurden, nicht zuletzt init , was viele Plugins für ihre Initialisierung verwenden.

Insbesondere hakt das TGM-Plugin-Aktivierungs- Plugin mit einer function, die do_action ('tgmpa_register') in init (mit der Standardpriorität = 10 do_action ('tgmpa_register') .

Daher müssen Sie Folgendes tun:

 // make sure we register this hook func with lower priority value than // TGM Plugin Activation does add_action ('init', 'sr_admin_init', 9) ; function sr_admin_init () { if (!is_admin ()) { return ; } // I NEED THIS TO TRIGGER FIRST wp_die("sr_admin_init"); } 

Bearbeiten

Um für den Autor des Codex-Eintrags wohltätiger zu sein, den Sie auf der Website finden: admin_init ist der erste “strikt admin” -bezogene Haken, der für Admin-Anfragen ausgetriggers wurde. Es ist nur nicht der 1. Haken gefeuert.