J'essaie de supprimer une action de thème pour un thème elegant-themes à l'aide d'un thème enfant. Cela fonctionne lorsque je supprime une action après le code add_action n'importe où dans le thème parent functions.php. Cependant, cela ne fonctionne pas lorsque je l'ajoute à partir du thème enfant functions.php.
remove_action ('after_setup_theme', 'et_pb_setup_theme' , 10);
Supprimer l'action a la même priorité 10 que l'action d'ajout. Ça ne devrait pas marcher?
add_action( 'after_setup_theme', 'et_pb_setup_theme' ); //parent theme add_action
Comme @cybmeta l'a déjà souligné, vous êtes trop tôt pour votre renvoi. Vous devez donc différer la suppression réelle, par exemple comme suit:
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' );
}
Le fichier functions.php des thèmes enfants est chargé juste avant le thème parent functions.php. Ainsi, lorsque vous exécutez remove_action
dans un thème enfant, l'action que vous tentez de supprimer n'existe pas car elle est ajoutée ultérieurement.
Essayez (changez simplement les noms):
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);
}