我正在开发一个自定义的joomla组件。我想在我的其中一个组件视图中添加joomla编辑器字段。我知道如何使用XML表单文件(models/forms/myview.xml)添加编辑器,但我想在视图文件(myview/tmpl/default.php)中不使用XML文件字段来完成同样的功能。是否可以实现?如果可以,请告诉我怎么做。
请帮个忙。
请帮个忙。
// IMPORT EDITOR CLASS
jimport( 'joomla.html.editor' );
// GET EDITOR SELECTED IN GLOBAL SETTINGS
$config = JFactory::getConfig();
$global_editor = $config->get( 'editor' );
// GET USER'S DEFAULT EDITOR
$user_editor = JFactory::getUser()->getParam("editor");
if($user_editor && $user_editor !== 'JEditor') {
$selected_editor = $user_editor;
} else {
$selected_editor = $global_editor;
}
// INSTANTIATE THE EDITOR
$editor = JEditor::getInstance($selected_editor);
// SET EDITOR PARAMS
$params = array( 'smilies'=> '0' ,
'style' => '1' ,
'layer' => '0' ,
'table' => '0' ,
'clear_entities'=>'0'
);
// DISPLAY THE EDITOR (name, html, width, height, columns, rows, bottom buttons, id, asset, author, params)
echo $editor->display('email', '', '400', '400', '20', '20', true, null, null, null, $params);
试试这个:
$editor = JFactory::getEditor();
echo $editor->display('content', $this->content, '550', '400', '60', '20', false);
在最新版本的Joomla中,即J3.x [更新],您可以使用以下类似内容:
jimport( 'joomla.html.editor' );
$editor = JEditor::getInstance(JFactory::getUser()->getParam("editor"));
echo $editor->display('content', $this->content, '550', '400', '60', '20', false);
Joomla 3.x
$editor = JFactory::getEditor();
$editor = $editor->display('mce', $yourContent, '550', '400', '60', '20', false);
jimport('joomla.html.editor'); $editor = \ JEditor :: getInstance();
- jakabadambalazs\JEditor::getInstance()
时,您应该指定您想要的编辑器,否则您将得到一个“无”编辑器 - 这是一个简单的文本区域。例如,\JEditor::getInstance('jce')
会给您提供JCE编辑器。但是,为了确保您不会硬编码某个可能没有安装的编辑器的名称(如JCE),我建议使用类似于这样的代码:$editor = \JEditor::getInstance(\JFactory::getUser()->getParam("editor"));
- jakabadambalazs