在After_Setup_Theme上的REMOVE_ACTION不从子主题起作用

时间:2014-12-09 作者:Smoking Sheriff

我正在尝试使用子主题删除优雅主题的主题操作。。当我在父主题函数中的任意位置添加\\u操作代码后删除操作时,这会起作用。php。但是,当我从子主题函数添加它时,它不起作用。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

3 个回复
最合适的回答,由SO网友:tfrommen 整理而成

正如@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\' );
}

SO网友:cybmeta

功能。子主题的php文件在父主题函数之前加载。php,所以当您运行remove_action 在子主题中,您试图删除的操作不存在,因为它是稍后添加的。

SO网友:T.Todua

尝试(只需更改名称):

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);
}

结束

相关推荐

Global functions on WPMU

我在一个多站点环境中工作,所有站点都是相关的。最近的许多发展都要求我将某些功能复制并粘贴到许多不同的主题文件夹中,如果我需要到处更新它们,就会出现问题。拥有全局“functions.php”文件的最佳方式是什么?我的想法是要么在themes文件夹中包含一个文件并包含它,要么创建一个插件并启用该插件。