簡體   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