首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 綜合知識

DedeCMS 防止 FCKeditor 破壞 HTML 代碼格式的設定方法

     編輯:PHP 綜合知識

問題現象

FCKeditor 預設開啟 XHTML 格式化,當在可視化模式編輯完整 HTML 頁面(含 <head>、<meta>、<script> 等)時,會自動修正標籤結構,導致 <head> 區域被竄改、屬性順序改變、甚至刪除某些非標準屬性。

解決方案:關閉 XHTML 格式化

  1. 開啟 include/FCKeditor/fckconfig.js。
  2. 尋找以下兩行:
FCKConfig.EnableXHTML = true;  // Unsupported: Do not change.
FCKConfig.EnableSourceXHTML = true; // Unsupported: Do not change.
  1. 修改為:
FCKConfig.EnableXHTML = false; // Unsopported: Do not change.
FCKConfig.EnableSourceXHTML = false; // Unsupported: Do not change.
  1. 清除瀏覽器快取(Ctrl+F5),重新整理編輯頁面。

原理說明

  • EnableXHTML:控制輸出模式是否強制符合 XHTML 規範(小寫標籤、屬性加引號、自閉合標籤等)。
  • EnableSourceXHTML:控制原始碼視圖顯示時是否套用 XHTML 格式化。
  • 設為 false 後,FCK 盡量保持原始 HTML 結構,不再自動「修正」。

副作用與注意

  • 關閉後,使用者手動輸入的不合法 HTML 將不被自動修復,可能導致前端顯示異常。
  • 建議僅在「編輯完整頁面模板」等特殊場景關閉;一般內容編輯保持開啟以維持輸出品質。
  • 若需平衡,可考慮改用 CKEditor 4+(FCK 繼任者),其 config.allowedContent = true 可更精細控制允許的標籤/屬性。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved