Ist es möglich, Aktionen und Filter aufzuspüren?

Soweit ich weiß, ist die Verwendung von Aktionen und Filtern der beste Ansatz für die Entwicklung von WordPress. Ich muss nur fragen, ob es irgendeine Möglichkeit gibt, welche Aktionen und Filter beim WordPress Rendering angewendet werden.

Meine Frage basiert auf der Tatsache, dass Hooks auf WordPress über verschiedene Plugins oder das aktive Theme selbst angewendet werden können.

Gibt es eine Möglichkeit herauszufinden, welche Aktionen und Filter-Hooks ausgetriggers werden und von welcher Datei sie aufgerufen werden?

Solutions Collecting From Web of "Ist es möglich, Aktionen und Filter aufzuspüren?"

Wenn Sie wissen, in welcher Datei ein Filter oder eine Aktion aufgerufen wird, ist es nicht möglich, Code auszuführen. Sie müssen den Quellcode suchen und lesen oder eine Dokumentation verwenden.

Es gibt verschiedene Plugins, die Ihnen helfen, den Hook, der auf einer Seite gefeuert wird, zu debuggen, Codex und / oder Google für sie zu suchen.

Um jedoch eine schnelle Idee zu haben, fügen Sie dieses Snippet in Ihre functions.php

 class MyTracker { static $hooks; static function track_hooks( ) { $filter = current_filter(); if ( ! empty($GLOBALS['wp_filter'][$filter]) ) { foreach ( $GLOBALS['wp_filter'][$filter] as $priority => $tag_hooks ) { foreach ( $tag_hooks as $hook ) { if ( is_array($hook['function']) ) { if ( is_object($hook['function'][0]) ) { $func = get_class($hook['function'][0]) . '->' . $hook['function'][1]; } elseif ( is_string($hook['function'][0]) ) { $func = $hook['function'][0] . '::' . $hook['function'][1]; } } elseif( $hook['function'] instanceof Closure ) { $func = 'a closure'; } elseif( is_string($hook['function']) ) { $func = $hook['function']; } self::$hooks[] = 'On hook "' . $filter . '" run '. $func . ' at priority ' . $priority; } } } } } add_action( 'all', array('MyTracker', 'track_hooks') ); add_action( 'shutdown', function() { echo implode( '
', MyTracker::$hooks ); }, 9999);

Gehe nun auf die Zielseite und scrolle nach unten …

Ich habe dieses Plugin geschrieben, um das zu tun, was du verlangst – Simply Show Hooks . Es zeigt Ihnen, wo sich alle Aktions- und Filter-Hooks befinden, in der Reihenfolge, auf der Seite, die Sie gerade betrachten, und allen functionen, die mit ihnen verknüpft sind. Hoffe das hilft 🙂

Simply Show Hook - Das WordPress-Plugin zeigt Ihnen, wo sich alle Action- und Filter-Hooks befinden, in der Reihenfolge, auf der von Ihnen betrachteten Seite