MUKI AI Summary
WordPress 預設留言會顯示 HTML 標籤,但技術型部落格需要顯示原始 HTML 語法。可修改 functions.php 檔案,加入特定語法,讓留言顯示 HTML 標籤而不被解析。
在 functions.php 中,透過 custom_comment_post 和 custom_comment_display 函數,使用 htmlspecialchars() 和 str_replace() 處理留言內容,確保 HTML 標籤顯示正確。最後存檔上傳,即可在留言中顯示 HTML 標籤。...
WordPress 預設留言支援 HTML 標籤,也就是會自動讀取 HTML 的樣式,但技術型部落格會需要透過留言討論 HTML 語法,我們會希望輸入 <h1>
就顯示 <h1>
,不要吃掉語法,讓「樣式」出現在留言中。
如果你跟我一樣有這困擾,希望在留言打 HTML 標籤,就會出現 HTML 標籤的話,不妨參考以下語法。
首先打開佈景主題的 functions.php,在 ?>
的上面,輸入以下語法(我有做簡單的註解,有興趣的朋友可以自行研究):
<?php // 讓迴響不支援 HTML TAG // 當有留言時,會呼叫 function function custom_comment_post($incoming_comment) { // 將留言內容,用 htmlspecialchars() 轉換字符 & 用 str_replace() 取代字符 $incoming_comment['comment_content'] = htmlspecialchars($incoming_comment['comment_content']); // 搜尋 $incoming_comment, 將單引號取代為 &apos ,以免 WordPress 視為 SPAM $incoming_comment['comment_content'] = str_replace( "'", ''', $incoming_comment['comment_content'] ); //回傳資料 return($incoming_comment); } //留言準備要顯示前,會呼叫 function function custom_comment_display($comment_to_display) { //將單引號取代回來 $comment_to_display = str_replace( ''', "'", $comment_to_display ); return $comment_to_display; } add_filter('preprocess_comment', 'custom_comment_post', '', 1); add_filter('comment_text', 'custom_comment_display', '', 1); add_filter('comment_text_rss', 'custom_comment_display', '', 1); add_filter('comment_excerpt', 'custom_comment_display', '', 1); ?>
最後再存檔上傳,留言就會顯示 HTML 標籤囉!
參考文章
@Disable HTML in WordPress Comments / WP insite
歡迎給我點鼓勵,讓我知道你來過 :)