我在 Prestashop 1.6.X 中做一个自定义模块。在我的模块中,我有一个用 smarty 制作的表格。我想以这种聪明的形式添加所见即所得的编辑器。那么有人可以告诉我如何将所见即所得编辑器添加到 smarty 模板表单中吗?任何帮助或建议都将是非常可观的。谢谢
问问题
4119 次
1 回答
6
您有很多解决方案来指示表单中的元素是否具有所见即所得的编辑器。如果您使用 helperform,您可以使用此解决方案:
解决方案后台/使用助手表单
$fields_form[0]['form'] = array (
'input' => array (
array (
'type' => 'textarea',
'label' => $this->l ( 'Your field:' ),
'name' => 'pdf_content',
'autoload_rte' => true,
'required' => true,
'lang' => true,
'rows' => 10,
'cols' => 100,
'hint' => $this->l ( 'Invalid characters:' ).' <>;=#{}'
),
****
$helper = new HelperForm ();
****
$helper->generateForm ( $fields_form )
模板中的第二个解决方案:
yourmodule.php 函数 getContent 中的示例
public function getContent()
{
$iso = $this->context->language->iso_code;
$this->tpl_vars['iso'] = file_exists(_PS_CORE_DIR_.'/js/tiny_mce/langs/'.$iso.'.js') ? $iso : 'en';
$this->tpl_vars['path_css'] = _THEME_CSS_DIR_;
$this->tpl_vars['ad'] = __PS_BASE_URI__.basename(_PS_ADMIN_DIR_);
$this->tpl_vars['tinymce'] = true;
$this->context->controller->addJS(_PS_JS_DIR_.'tiny_mce/tiny_mce.js');
$this->context->controller->addJS(_PS_JS_DIR_.'admin/tinymce.inc.js');
在您的 smarty 模板文件中:
<script type="text/javascript">
var iso = '{$iso|escape:'quotes':'UTF-8'}';
var pathCSS = '{$smarty.const._THEME_CSS_DIR_|escape:'quotes':'UTF-8'}';
var ad = '{$ad|escape:'quotes':'UTF-8'}';
$(document).ready(function(){
tinySetup({
editor_selector :"autoload_rte",
relative_urls : false,
plugins : "colorpicker link image paste pagebreak table contextmenu filemanager table code media autoresize textcolor fullpage",
extended_valid_elements : "em[class|name|id],html,head"
});
});
</script>
<textarea name="content_html" class="rte autoload_rte rte autoload_rte">your text rich</textarea>
于 2016-01-05T07:56:39.377 回答