编辑2:根据马克·卡普伦的建议,一般的解决方案应该是这样的。我们会在页面生成后进行过滤,所以我们不在乎使用哪个插件。
我们需要一个黑客来获取整个页面:
ob_start();
add_action(\'shutdown\', function() {
$final = \'\';
// We\'ll need to get the number of ob levels we\'re in, so that we can iterate over each, collecting
// that buffer\'s output into the final output.
$levels = ob_get_level();
for ($i = 0; $i < $levels; $i++)
{
$final .= ob_get_clean();
}
// Apply any filters to the final output
echo apply_filters(\'final_output\', $final);
}, 0);
我从
this question然后可以删除2个旧过滤器:
add_filter(\'the_content\', \'my_nofollow\');
add_filter(\'the_excerpt\', \'my_nofollow\');
只能使用一个:
add_filter(\'final_output\', \'my_nofollow\');
Old answer
只需再添加一个过滤器。
add_filter(\'acf/load_value/name=my_field\', \'my_nofollow\' );
编辑:解决这个问题的概念是过滤插件生成的内容,这里是ACF。因为
the_content
是来自WP的,而不是您正在使用的插件,因此将筛选器添加到\\u内容不会有帮助。