阻止将Add_Filter应用于wp-admin页面

时间:2016-06-29 作者:ditto

我正在对自定义字段插件应用过滤器。

add_filter(\'acf/load_value\', word_swap);
我的问题是,这也将其应用于wp admin中的页面。我只想过滤器应用到实际的WP网站,而不是管理面板。

如何防止筛选器应用于wp admin页面?

我想我会这样做

if(page == \'wp-admin\')
   add_filter(\'acf/load_value\', word_swap);

2 个回复
最合适的回答,由SO网友:Pieter Goosen 整理而成

你需要!is_admin() 检查这将在管理页面上返回false,不符合您的条件。在前端页上,该条件将返回true,执行您的条件语句

if ( !is_admin() ) {
    // Do something only on frontend
}

SO网友:fuxia

功能is_admin() 在加载任何插件之前可用。因此,您可以在注册回调时使用它:

is_admin() or add_filter(\'acf/load_value\', \'word_swap\' );

相关推荐

使用wp_ins_post()插入新帖子后,该帖子对wp_Query不可见,但同样的WP_Query也适用于从wp-admin面板插入的帖子

制作脚本,在特定条件下向数据库添加新的自定义帖子。一切正常。但有一种流动。在用我的脚本将帖子写入数据库后,我无法用WP\\u查询将其提取出来。如果我直接从wp管理面板添加帖子,所有WOKR都可以。但如果我用脚本添加帖子,我无法用WP\\u查询提取它们。新添加的帖子显示在wp admin面板的帖子列表中,包含所有所需的值,这些都很酷,但对wp\\U查询不可见。只有在我在wp管理面板中更改帖子的任何自定义字段并按下更新按钮后,它才可见。参考页面后,一切都开始完美工作。新帖子似乎已经发布,当我列出所有此类可用帖