我试图在每篇文章的开头添加一些文字(文字来自post_meta
, 但是对于这个示例,我们假设它是静态文本)。
以下是我尝试的内容:
add_filter(\'the_content\', function($content)
{
return \'Text from meta - \' . $content;
});
然而,如果帖子以一个通常是浮动的图像开始(有时甚至用标题短代码包装),添加的文本将出现在图像之前。
我想在文章的第一段前面加上文字。有没有办法在不解析完整HTML的情况下实现这一点?
最合适的回答,由SO网友:Joseph Silber 整理而成
我最终决定使用一个regex,限制为1,所以它只发生在第一段:
add_filter(\'the_content\', function($content)
{
$content = preg_replace(\'/<p[^>]*>/\', \'$1Text from meta - \', $content, 1);
return $content;
});