是否筛选_CONTENT以在每个<h1>元素之前添加内容?

时间:2012-12-20 作者:Jk_

我正在寻找一种过滤\\u内容的干净方法,以便在每个H1标记之前添加一段代码。事实上,我有一个很长的隐私政策文本,我想在每个段落之前添加一个返回顶部的链接。当然,我可以轻松地在内容编辑器中添加这些内容,但我不希望我的客户能够意外地将其删除。

所以我有这样的想法:

<h1>BLA BLA BLA</h1>
<p>A very interesting piece of text here...<p>
<h1>BLA BLA BLA</h1>
<p>A very interesting piece of text here...<p>
<h1>BLA BLA BLA</h1>
<p>A very interesting piece of text here...<p>
我想过滤它以获得:

<a href="#">Back to the top</a>
<h1>BLA BLA BLA</h1>
<p>A very interesting piece of text here...<p>
<a href="#">Back to the top</a>
<h1>BLA BLA BLA</h1>
<p>A very interesting piece of text here...<p>
<a href="#">Back to the top</a>
<h1>BLA BLA BLA</h1>
<p>A very interesting piece of text here...<p>
提前感谢您的时间。

干杯

J

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

只是过滤器\'the_content\', 测试您是否在correct page, 然后运行str_ireplace():

add_filter( \'the_content\', \'wpse_76808_filter_h1\' );

function wpse_76808_filter_h1( $content )
{
    // page slug
    if ( ! is_page( \'privacy-policy\' ) )
        return $content;

    return str_ireplace( \'<h1\', \'<a href="#">Back to the top</a><h1\', $content );
}

结束

相关推荐

Add_Filters()和Apply_Filter()有什么作用?

我有点困惑,为什么这不起作用-尽管必须说,我不太确定是什么apply_filters() 和add_filter 正在做,所以任何一般性的提示都会很好!我想要一个查询,在一个帖子页面上显示之前的五篇帖子。我正在发送当前帖子的日期,并希望应用一个过滤器,过滤出早于此的帖子。function sw_filter_posts_before( $where = \'\', $date) { $where .= \" AND post_date < \'\" . $date . \"