从WP父主题中删除功能

时间:2014-04-19 18:42:13

标签: wordpress

在父主题的文件夹中有一个功能:

add_action('wp_footer', 'znn_load_js');
function znn_load_js() { 
     include(get_template_directory() . '/javascript.php');
} 

我想覆盖它并包含我自己的javascript.php文件。我已经尝试了

remove_action('wp_footer', 'znn_load_js');

但它没有用。有什么建议吗?

1 个答案:

答案 0 :(得分:2)

如果您只需要从主题中删除此代码,我建议您完全从您的functions.php中删除它。但是,如果由于某种原因需要保留它,则可以设置add_action和remove_action的优先级。通过设置较低的优先级,操作将更早执行。通过设置更高的优先级,该操作将在稍后执行。无论是add_action还是remove_action,主体都是相同的。

我建议您阅读这两个内容以获取更多信息:

http://codex.wordpress.org/Function_Reference/add_action

http://codex.wordpress.org/Function_Reference/remove_action

1] add_action的默认优先级为10,但您可以使用第3个参数手动设置它,如下所示:

add_action('wp_footer', 'znn_load_js', 10);
function znn_load_js() { 
     include(get_template_directory() . '/javascript.php');
} 

2] 因此,将remove_action和add_action的优先级设置为相同的数字,在本例中为10.但是,您可以将它们更改为您想要的任何优先级。将此动作挂钩放在子主题中。

add_action('after_setup_theme', 'remove_parent_functions');
function remove_parent_functions() {
    remove_action('wp_footer', 'znn_load_js', 10);
}