Ich versuche, eine Themenaktion für ein elegantes Thema mit einem untergeordneten Thema zu entfernen. Dies funktioniert, wenn ich die Aktion nach dem add_action-Code an einer beliebigen Stelle in der übergeordneten Themenfunktion.php entferne. Es funktioniert jedoch nicht, wenn ich es aus der child theme functions.php hinzufüge.
remove_action ('after_setup_theme', 'et_pb_setup_theme' , 10);
Aktion entfernen hat die gleiche Priorität 10 wie die Aktion hinzufügen. Sollte es nicht funktionieren?
add_action( 'after_setup_theme', 'et_pb_setup_theme' ); //parent theme add_action
Wie @cybmeta bereits betont hat, sind Sie mit Ihrer Entfernung zu früh. Sie müssen also die eigentliche Entfernung verschieben, zum Beispiel so:
add_action( 'after_setup_theme', 'wpdev_170663_remove_parent_theme_stuff', 0 );
function wpdev_170663_remove_parent_theme_stuff() {
remove_action( 'after_setup_theme', 'et_pb_setup_theme' );
}
Die Datei functions.php der untergeordneten Themen wird direkt vor der Datei functions.php des übergeordneten Themas geladen. Wenn Sie also remove_action
im untergeordneten Thema ausführen, ist die zu entfernende Aktion nicht vorhanden, da sie später hinzugefügt wird.
Versuchen Sie (ändern Sie einfach die Namen):
add_action( 'init' , 'myyy_remove' , 15 );
function myyy_remove() {
remove_action('ACTION_NAME', 'my_function_name_Something' ,11);
remove_action('ACTION_NAME', 'my_function_name_Another' ,11);
}