我试图在wordpress页面上更改一些内容。我总是用h3标签写contect,但每个帖子都有3次3h。
我想在第一个h3标记后添加一些文本。
function add_content_after_h3($content){
if (is_single()) {
$div = \'<div>sometext</div>\';
$content = preg_replace(\'/(<\\/h3>)/i\', \'\\1\'.$div, $content);
}
return $content[0];
}
add_filter(\'the_content\', \'add_content_after_h3\');
但此代码不起作用:(
最合适的回答,由SO网友:David Sword 整理而成
票据返回$content[0];
什么时候!is_single()
您将得到不存在的错误。
您可以通过以下方式实现您的目标:
add_filter(\'the_content\', function ($content){
if (!is_single()) return $content;
$div = "";
return preg_replace(\'/<\\/h3>/i\', "</h3>".$div, $content, 1);
});
注意第三个参数
preg_replace()
是限制,设置为
1
将替换限制为第一个匹配项。