西部数码主机 | 阿里云主机| 虚拟主机 | 服务器 | 返回乐道官网
当前位置: 主页 > php教程 > magento教程 >

如何让magento的所见即所得编辑器支持link,script,

时间:2016-01-27 08:21来源: 作者: 点击:
magento后台的cms页面,static block编辑时可以使用TinyMCE所见即所得编辑器。默认情况下,magento不管哪个版本都是不支持在TinyMCE中使用style,link,script,iframe等一些会影响页面安全或会导致页面

magento后台的cms页面,static block编辑时可以使用TinyMCE所见即所得编辑器。默认情况下,magento不管哪个版本都是不支持在TinyMCE中使用style,link,script,iframe等一些会影响页面安全或会导致页面无法使用的标签,毕竟这些标签可能导致整个页面布局错乱掉。

但是实际情况是,普通用户使用magento的static block制作专题页面时还是要借助到这些标签。你可能会说它不是用个显示html源代码的按钮,直接将代码复制进去就行了,但是很快你会发现,你贴进去的代码中所有的style,link,script,iframe标签会被过滤掉。也就是默认magento是不允许在TinyMCE所见即所得编辑器使用这些标签。

如果要允许在TinyMCE所见即所得编辑器使用这些标签,编辑

js/mage/adminhtml/wysiwyg/tiny_mce/setup.js

在97行可以找到TinyMCE所见即所得编辑器的配置参数数组setting,给这个数组添加一个key为extended_valid_elements的元素,值就是你要允许使用的标签,用逗号分隔,如

j

extended_valid_elements : 'iframe[src|style|width|height|scrolling|marginwidth|marginheight|frameborder],style,script[type|src],link[rel|type|media|href]',

改后setting数组大致是

var settings = {
            mode : (mode != undefined ? mode : 'none'),
            elements : this.id,
            theme : 'advanced',
            plugins : plugins,
            theme_advanced_buttons1 : magentoPlugins + 'magentowidget,bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,styleselect,formatselect,fontselect,fontsizeselect',
            theme_advanced_buttons2 : 'cut,copy,paste,pastetext,pasteword,|,search,replace,|,bullist,numlist,|,outdent,indent,blockquote,|,undo,redo,|,link,unlink,anchor,image,cleanup,help,code,|,forecolor,backcolor',
            theme_advanced_buttons3 : 'tablecontrols,|,hr,removeformat,visualaid,|,sub,sup,|,charmap,iespell,media,advhr,|,ltr,rtl,|,fullscreen',
            theme_advanced_buttons4 : 'insertlayer,moveforward,movebackward,absolute,|,styleprops,|,cite,abbr,acronym,del,ins,attribs,|,visualchars,nonbreaking,pagebreak',
            theme_advanced_toolbar_location : 'top',
            theme_advanced_toolbar_align : 'left',
            theme_advanced_statusbar_location : 'bottom',
            theme_advanced_resizing : true,
            extended_valid_elements : 'iframe[src|style|width|height|scrolling|marginwidth|marginheight|frameborder],style,script[type|src]',

进入magento后台,清空一下缓存可能需要,刷新一下页面,再次将html源代码贴到TinyMCE所见即所得编辑器是不会被过滤提style,这些标签。需要注意的是,要指定对应标签的属性,不然这些属性还是会被过滤掉。

(责任编辑:好模板)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------