2014-01-20 34 views
2

我明白,消毒用戶輸入是重要的,我想確保刪除壞東西,但我也希望能夠讓用戶添加html到自定義字段。在wordpress中消毒,但保持html

WordPress的淨化文本字段功能做得很好,但我想告訴它保持HTML。

是否有另一個功能,我可以使用,這將允許我這樣做?

Stackoverflow不會讓我發佈一個簡短的問題,所以它似乎我需要填補它。爲此事道歉。

我試過在wordpress codex中查找函數,看看是否有參數,我可以切換,以便它允許html。我已經拿出了消毒功能,看看它是否有效,當然也有效。

+0

這不是一個重複,但會回答這個問題的幫助? http://stackoverflow.com/questions/2127009/using-wordpress-can-some-one-tell-me-the-best-way-of-sanitizing-input?rq=1 –

回答

4

wp_kses()會做你需要的。你需要告訴它什麼標籤允許。或者,使用wp_kses_post(),它允許您添加到帖子中的任何內容。這可能不夠嚴格的用戶輸入,但我建議與第一次。

echo wp_kses($text, array( 
    'a' => array(
     'href' => array(), 
     'title' => array() 
    ), 
    'br' => array(), 
    'em' => array(), 
    'strong' => array(), 
)); 

http://codex.wordpress.org/Function_Reference/wp_kses http://codex.wordpress.org/Function_Reference/wp_kses_post