通过过滤器自动添加字幕

时间:2013-08-01 作者:Andrea Puiatti

如果用户不在每个页面的顶部添加标题,我的客户的模板看起来很糟糕。

我想写一个函数来自动添加H1标签,如果H1标签不存在。

This doesn\'t work!

    function auto_dummy_titles($content) {
    if (strpos($content,\'<h1>\') == false) {
        echo \'<h1>PLEASE ADD H1 TITLE TO THE PAGE</h1>\';
    }
    return $content;
}
add_filter( \'the_content\', \'auto_dummy_titles\');
It does work just if I write \'h1\' instead of \'\'为什么?

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

我不明白为什么你的“标题”在帖子正文中,但你不应该echo正在从该筛选器中删除内容。您应该创建并返回一个字符串。

function auto_dummy_titles($content) {
    if (strpos($content,\'<h1>\') === false) {
      $content = \'<h1>PLEASE ADD H1 TITLE TO THE PAGE</h1>\'.$content;
    }
    return $content;
}
add_filter( \'the_content\', \'auto_dummy_titles\');
不过,该函数确实可以工作。我忍不住想,问题是你应该检查实际的文章标题,而不是文章内容。

结束

相关推荐

Apply_Filters()和_Excerpt提供了意外的结果

我觉得我一定错过了一些显而易见的东西,但我似乎无法让WordPress合作。我正在用一个函数生成Facebook OG标签。除了摘录,一切都很好。自get_the_excerpt($post->ID), 有没有其他方法可以创建摘录而不必创建一个全新的循环?我觉得这太过分了。我的第一反应是apply_filters():$description = apply_filters(\'the_excerpt\', get_post($post->ID)->post_content);