2015-10-20 80 views
4

對不起,我不是母語的人。防止TinyMCE在Wordpress的p標籤中包裝文字

我一直在努力解決這個問題幾個小時,沒有運氣到目前爲止。 這個問題看起來像Stack Overflow先前在這裏提到的問題的重複,但是這裏找到的解決方案都不適合我。

TinyMCE將任何你放在裏面的東西包裝在p標籤中。我需要更改tinymce的forced_root_block設置來防止這種情況,但我不知道如何在Wordpress上實現這一點。

我試着把代碼找到here在我的functions.php,但它沒有工作。另外,這個問題並不是圍繞「wpautop」展開的。這只是一個TinyMCE問題:它將p標籤作爲默認行爲,因爲它需要一個根塊。在我的情況下,我不需要根塊,因爲編輯器的內容只是一個純文本,其根塊位於我的模板代碼中。添加的p標籤簡單地打破了我的佈局,增加了不必要的html元素。

我嘗試使用TinyMCE的advaced插件,它有這個選項:

Stop removing the <p> and <br /> tags when saving and show them in the Text editor

但是當這種不檢查有效果「剝離」的所有p標籤,即使是那些我故意使用在編輯器中。

所有我想要實現的是避免增加不必要的p標籤編輯器,並在同一時間,保持p標籤我故意用

有沒有辦法在Wordpress上編輯TinyMCE的forced_root_block設置?

+0

你的意思是說,當你在視覺模式下按回車時,它應該增加兩個'
'而不是新的段落? – vard

+0

不,如果我在編輯器中輸入「Lorem Ipsum」,它會自動將其包裝在p標籤中。這就是我想要阻止的。找到解決方案,編輯我的文章。謝謝 – mickmickmick

+0

您最好應該將解決方案作爲答案發布並接受它(24小時後),因此您的問題將被標記爲已解決。 – vard

回答

5

編輯:經過太多的小時,我搞不清兩個不同的Wordpress安裝,我正在同一時間工作。鏈接後的解決方案爲我工作,但我正在檢查其他網站上的結果。通過把這個:

function change_mce_options($init){ 
    $init["forced_root_block"] = false; 
    $init["force_br_newlines"] = true; 
    $init["force_p_newlines"] = false; 
    $init["convert_newlines_to_brs"] = true; 
    return $init;  
} 
add_filter('tiny_mce_before_init','change_mce_options'); 

在我的functions.php中,TinyMCE停止將任何東西放入p標籤。需要檢查TinyMCE Advaced的Stop removing the <p> and <br /> tags when saving and show them in the Text editor

+0

加1用於發佈找到的解決方案 – Thariama