[英]How to get data including HTML from a Rich Text editor using script and HTML
[英]How to make Joomla 3.0 rich text editor allow HTML?
在Joomla 2.5中我使用下面的代碼生成一個富文本編輯器,它允許我輸入HTML並將其保存在數據庫中。 代碼如下。
<?php
$editor = & JFactory::getEditor();
$params = array('smilies'=> '0' ,'style' => '0' ,'layer' => '0' ,'table' => '0' ,'clear_entities'=>'0');
echo $editor->display('description',$description , 550, 400, 60, 20, false, $params);
?>
但是在Joomla 3.0中我使用相同的代碼,但富文本編輯器不允許我輸入HTML。 Article Manager富文本編輯器中的編輯器允許我輸入HTML。 為什么這個編輯器沒有?
我怎樣才能解決這個問題? 應該傳遞哪些額外參數以允許富文本編輯器允許HTML?
您的JModel的提示:
請注意,默認情況下,JRequest :: GET會將所有HTML代碼過濾為純文本,這在使用編輯器時可能不是很有用。 要在模型類中存儲HTML代碼,您必須明確地從JRequest-Object請求HTML代碼,否則將剝離所有HTML。
JRequest::getVar( 'yourfieldname', '', 'post', 'string', JREQUEST_ALLOWHTML );
JREQUEST_ALLOWHTML
是要記住的關鍵點。 鑒於
不推薦使用JFactory::getEditor()
。 你應該從12.3開始使用JEditor::getInstance()
當您使用XML表單結構時,您可以使用“編輯器”表單字段類型。 在這種情況下,為了允許HTML標記,您必須使用屬性“ filter ='safehtml' ”來允許使用html標記保存內容。
例如:
<field
name="event_desc"
type="editor"
editor="tinymce"
width="400"
height="100"
label="COM_YOURCOMPONENT_FIELD_LABEL"
description="COM_YOURCOMPONENT_FIELD_DESC"
cols="30"
rows="5"
class=""
default=""
filter="safehtml"
/>
希望這會節省一些時間。 :)快樂的編碼!
在Joomla 3.6中我收到此錯誤
使用未定義的常量JREQUEST_ALLOWHTML - 假設為'JREQUEST_ALLOWHTML'。
我得出的結論是,在Joomla中檢索html格式文本的最佳方法是:
$html = JComponentHelper::filterText(JFactory::getApplication()->input->post->get($var_name, $default_value, 'raw'));
希望這可以幫助
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.