繁体   English   中英

WordPress如何为内容添加换行符?

[英]How does WordPress add line-breaks to the content?

目前,我正在将内容从WordPress迁移到另一个CMS。

我使用了WordPress的默认内容导出功能,该功能创建了一个包含所有内容的XML文件。 除所有<br>都丢失的事实外,此方法工作正常。

因此,然后我在内容上运行了PHP的nl2br ,它在某些行上可以正常运行,但还在不应该添加的地方添加<br> ,例如在<ul><li>元素之间。

在数据库中,WordPress内容不包含<br> ,因此内容导出似乎很准确。 但是,在WordPress网站的最终HTML输出中,HTML确实包含<br> 所以我想知道:WordPress如何添加<br> ,它如何知道在哪里添加而不在哪里? 谁能指出WordPress添加它们的地方?

数据库中的内容示例:

<strong>Something:</strong> Something else
<strong>Another point:</strong> Lorem ipsum

<ul>
    <li><strong>Some text</strong></li>
    <li><strong>Some other text</strong></li>
</ul>

我的nl2br将导致:

<strong>Something:</strong> Something else<br>
<strong>Another point:</strong> Lorem ipsum<br>
<br>
<ul><br>
    <li><strong>Some text</strong></li><br>
    <li><strong>Some other text</strong></li><br>
</ul><br>

WordPress的输出生成:

<strong>Something:</strong> Something else<br />
<strong>Another point:</strong> Lorem ipsum<br />

<ul>
    <li><strong>Some text</strong></li>
    <li><strong>Some other text</strong></li>
</ul>

我在WordPress添加<br>的地方找到了实际的代码(这不是很漂亮...)

wp-includes/formatting.php::wpautop()有很多逻辑,我想我会将该功能复制到导入脚本中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM