为何WordPress会自动剥离<p>标签?
问题原因及解决办法
核心原因
the_post_thumbnail_caption() 函数的特性是直接输出内容,而非返回字符串。当你用它参与字符串拼接时,函数会先把标题内容打印出来,之后才执行echo输出<p>和</p>。这种错位的输出顺序会被浏览器或WordPress的自动格式化机制判定为无效结构,最终导致<p>标签被剥离,只显示caption文本。
修复代码
改用get_the_post_thumbnail_caption()函数——它的作用是返回标题字符串(不直接输出),这样就能正常完成标签拼接。修改后的代码如下:
<?php $caption = get_the_post_thumbnail_caption(); if ($caption) { echo '<p>' . $caption . '</p>'; } ?>
执行后即可得到预期的<p>Caption here</p>输出。
内容的提问来源于stack exchange,提问作者Elaine Byene
相关产品推荐
相关产品推荐

