我必須通過特定的代碼禁用wpautop:WordPress的wpautop問題
remove_filter('the_content', 'wpautop');
remove_filter('the_excerpt', 'wpautop');
此功能。但我的實際問題是,它刪除了我在內容中手動使用的自定義「p」標籤。
所以問題是,當我不使用上面給出的代碼,有自動p
標籤,摧毀我的網站,當我禁用它們,自定義p
標籤也被禁用。
我必須通過特定的代碼禁用wpautop:WordPress的wpautop問題
remove_filter('the_content', 'wpautop');
remove_filter('the_excerpt', 'wpautop');
此功能。但我的實際問題是,它刪除了我在內容中手動使用的自定義「p」標籤。
所以問題是,當我不使用上面給出的代碼,有自動p
標籤,摧毀我的網站,當我禁用它們,自定義p
標籤也被禁用。
避免wpauto問題的最簡單和最簡單的方法是瞭解如何wpautop作品,
任何純文本,或內聯元素不與塊元素包裹將被自動與對換。如果元素是塊,並且它內部沒有兩個換行符,它將不會與P以及其中的元素一起換行,空行內元素將被刪除並移除。
例如
直列
<img src="blabal.jpg">
將輸出<p><img src="blabal.jpg"></p>
,
I am awesome
將輸出<p>I am awesome</p>
,
<span>Really?</span>
將輸出<p><span>Really?</span></p>
,
塊
<div><img src="blabal.jpg"></div>
將輸出<div><img src="blabal.jpg"></div>
,
<div>I am awesome</div>
將輸出<div>I am awesome</div>
,
<div><span>Really?</span></div>
將輸出<div><span>Really?</span></div>
,
<span></span>
將輸出什麼,(空內聯元素將被刪除。),
我真的很喜歡wpautop,我從來沒有禁用它,我只是用DIV包裝任何內容,如果有一個元素我不wa nt有P,我也有一個短代碼,避免wpauto元素在裏面時,它有幫助,當你有一個長屁股內容,想避免自動p標記
這裏是修復/解決方法,我剛剛通過實驗發現。給<p>
元素一個屬性(<p class>
)。它甚至不必具有實際價值。 WordPress似乎認爲如果它有一個屬性,值得保留。而且,該屬性甚至不一定是實際的HTML屬性。例如,<p data-please-work>
似乎工作得很好。我並不是說我必須推薦這麼做,但值得一提的是。
我剛纔自己發現了這個問題,並且尋找一個修復程序將我引向這個問題。這是一個非常令人惱怒的情況,我不明白爲什麼它會這樣。你會認爲禁用它會阻止WordPress添加自己的<p>
元素 - 但是不會。它似乎試圖阻止<p>
元素,期間 - 甚至你的。
如果別人有另一種方式去處理這個問題,我很想知道。銀的技巧似乎有助於知道。