删除Visual Composer Head Meta(单独使用,但不能与If一起使用)

时间:2017-02-19 作者:Jason

我正在尝试删除VC添加的头元,即“meta name=“generator”content=“由Visual Composer支持-WordPress拖放页面生成器”。

如果我添加:

add_action(\'init\', \'myoverride\', 100);
function myoverride() {
    remove_action(\'wp_head\', array(visual_composer(), \'addMetaData\'));
}
它可以工作并删除它。但如果安装了,我想删除它,因为如果不是,上面的代码显然会抛出错误。

如果我添加:

if ( class_exists( \'Vc_Manager\' ) ) {
add_action(\'init\', \'myoverride\', 100);
function myoverride() {
    remove_action(\'wp_head\', array(visual_composer(), \'addMetaData\'));
}
}
这根本不起作用。我已经检查了类名,它是正确的。我是一个PHP noob,所以任何建议都很感激。

1 个回复
SO网友:Mark Kaplun

你的问题归根结底是在init 胡克被解雇了。您不应该检查代码是否存在,以及之前的DB结构。如果是与前端相关的代码,则之前不应执行任何操作template_redirect

您的代码应该是

add_action(\'wp_head\', \'myoverride\', 1);
function myoverride() {
  if ( class_exists( \'Vc_Manager\' ) ) {
    remove_action(\'wp_head\', array(visual_composer(), \'addMetaData\'));
  }
}

相关推荐