私は子テーマを使ってエレガントテーマのテーマのためのテーマアクションを削除しようとしています。これは私が親テーマのfunctions.phpのどこかでadd_actionコードの後にアクションを削除するときに働きます。ただし、child theme functions.phpから追加した場合は機能しません。
remove_action ('after_setup_theme', 'et_pb_setup_theme' , 10);
削除アクションは、追加アクションと同じ優先順位10を持ちます。うまくいかないでしょうか。
add_action( 'after_setup_theme', 'et_pb_setup_theme' ); //parent theme add_action
@cybmetaがすでに指摘したように、あなたはあなたの削除には早すぎます。そのため、実際の削除を延期する必要があります。たとえば、
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' );
}
子テーマのfunctions.phpファイルは親テーマのfunctions.phpの直前にロードされるので、子テーマでremove_action
を実行すると、削除しようとしているアクションは存在しないため、後で追加されます。
試してください(名前を変更するだけです)。
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);
}