在 Joomla 中向 TinyMCE 编辑器添加选项

Posted

技术标签:

【中文标题】在 Joomla 中向 TinyMCE 编辑器添加选项【英文标题】:Add option to TinyMCE Editor in Joomla 【发布时间】:2013-06-03 14:49:05 【问题描述】:

我正在 Joomla 2.5.9 下开发一个管理组件,并且我使用 TinyMCE 3.5.4.1 作为我的文章的编辑器。 我已将编辑器设置为“简单模式”,因为我只需要很少的编辑选项,但除了这些基础知识之外,我还需要“文本颜色”。 扩展或高级模式有很多我不需要或我不希望内容管理器使用的选项,那么我如何才能添加我想要的?

提前谢谢你

【问题讨论】:

【参考方案1】:

好的,我明白了! 我将尝试在以下步骤中解释我的“肮脏但有效”的解决方案:

1) 为您的 TinyMCE 激活“扩展模式”

2) 转到 %YOUR_JOOMLA_INSTALLATION_PATH%\media\editors\tinymce\jscripts\tiny_mce\themes\advanced

3) 打开文件 editor_template.js 并转到第 107 行(对于版本 3.5.4.1),您将在其中找到以下代码:

    tinymce.create('tinymce.themes.AdvancedTheme'...

4) 几行之后你会发现“控件”对象的定义

    controls : 
        bold : ['bold_desc', 'Bold'],
        italic : ['italic_desc', 'Italic'],
        underline : ['underline_desc', 'Underline'],
        strikethrough : ['striketrough_desc', 'Strikethrough'],
        justifyleft : ['justifyleft_desc', 'JustifyLeft'],
        justifycenter : ['justifycenter_desc', 'JustifyCenter'],
        justifyright : ['justifyright_desc', 'JustifyRight'],
        justifyfull : ['justifyfull_desc', 'JustifyFull'],
        bullist : ['bullist_desc', 'InsertUnorderedList'],
        numlist : ['numlist_desc', 'InsertOrderedList'],
        outdent : ['outdent_desc', 'Outdent'],
        indent : ['indent_desc', 'Indent'],
        cut : ['cut_desc', 'Cut'],
        copy : ['copy_desc', 'Copy'],
        paste : ['paste_desc', 'Paste'],
        undo : ['undo_desc', 'Undo'],
        redo : ['redo_desc', 'Redo'],
        link : ['link_desc', 'mceLink'],
        unlink : ['unlink_desc', 'unlink'],
        image : ['image_desc', 'mceImage'],
        cleanup : ['cleanup_desc', 'mceCleanup'],
        help : ['help_desc', 'mceHelp'],
        code : ['code_desc', 'mceCodeEditor'],
        hr : ['hr_desc', 'InsertHorizontalRule'],
        removeformat : ['removeformat_desc', 'RemoveFormat'],
        sub : ['sub_desc', 'subscript'],
        sup : ['sup_desc', 'superscript'],
        forecolor : ['forecolor_desc', 'ForeColor'],
        forecolorpicker : ['forecolor_desc', 'mceForeColor'],
        backcolor : ['backcolor_desc', 'HiliteColor'],
        backcolorpicker : ['backcolor_desc', 'mceBackColor'],
        charmap : ['charmap_desc', 'mceCharMap'],
        visualaid : ['visualaid_desc', 'mceToggleVisualAid'],
        anchor : ['anchor_desc', 'mceInsertAnchor'],
        newdocument : ['newdocument_desc', 'mceNewDocument'],
        blockquote : ['blockquote_desc', 'mceBlockQuote']
    ,

在这里你可以只评论你不需要的控件。

5) 之后,您将找到 stateControls 对象,您将在其中评论之前评论过的相同控件

    stateControls : ['bold', 'italic', 'underline', 'strikethrough', 'bullist', 'numlist', 'justifyleft', 'justifycenter', 'justifyright', 'justifyfull', 'sub', 'sup', 'blockquote']

6) 至少你会找到工具栏的定义。在这里,您可以添加/删除您需要/不需要的按钮,并最终将它们移动到您想要的位置。

    // Setup default buttons
        if (!s.theme_advanced_buttons1) 
            s = extend(
                theme_advanced_buttons1 : "bold,italic,underline,strikethrough,|,forecolor,backcolor",
                theme_advanced_buttons2 : "sub,sup",
                theme_advanced_buttons3 : "anchor"
            , s);
        

7) 保存、清除缓存并重新加载您的编辑器。就是这样。

【讨论】:

【参考方案2】:

猜猜,这会对你有所帮助:http://forum.joomla.org/viewtopic.php?p=1031220

【讨论】:

这不是我所需要的,但它给了我正确的建议。谢谢。

以上是关于在 Joomla 中向 TinyMCE 编辑器添加选项的主要内容,如果未能解决你的问题,请参考以下文章

在 Joomla 3 中向组件添加类别

TinyMCE Joomla 3.5中的下拉自定义按钮

Joomla 1.7:所见即所得编辑器不起作用

WordPaster-Joomla_3.4.7-tinymce 4.1.7示例发布

在 Joomla 3 中向组件添加带有自定义 url 参数的菜单类型

Uncaught ReferenceError: tinyMCE is not defined , joomla 2.5.7 error on Chrome