我最近将Magento CE从1.8升级到1.9
编辑CMS页面时,如果我粘贴任何数据并保存,当我返回并编辑该页面时,我的粘贴文本已消失。通过禁用Magento WYSIWYG编辑器,它看起来很好,但当然,我只能输入原始HTML。
自升级到1.9以来,似乎只发生了这种情况。我不知道为什么会发生这种情况。
答案 0 :(得分:0)
将内容从MS Word复制到Magento 1.9 CE的Redactor WYSIWYG扩展时遇到了同样的问题。
我做了一个非常简单/丑陋的修复,它似乎是一种享受。我在line 1282
/skin/adminhtml/default/default/mgt_amazing_wysiwyg/js/redactor
周围的StripTags函数
这是我的重写功能:
// REMOVE TAGS
stripTags: function(html)
{
// Redactor WYSIWYG editor refusing to accept pasted content from MS Word
// By Kingsley Raspe
// See: https://gist.github.com/kingsloi/97260c320bf22e5b96c7
var allowedObj = this.opts.allowedTags;
var allowed = '';
//convert allowedTags to string in <b><i><h1> format
for (var p in allowedObj) {
if (allowedObj.hasOwnProperty(p)) {
allowed += '<' + allowedObj[p] + '>';
}
}
//search and destroy
allowed = (((allowed || "") + "").toLowerCase().match(/<[a-z][a-z0-9]*>/g) || []).join('');
var tags = /<\/?([a-z][a-z0-9]*)\b[^>]*>/gi,
commentsAndPhpTags = /<!--[\s\S]*?-->|<\?(?:php)?[\s\S]*?\?>/gi;
return html.replace(commentsAndPhpTags, '').replace(tags, function($0, $1){
return allowed.indexOf('<' + $1.toLowerCase() + '>') > -1 ? $0 : '';
});
},
我知道有点迟了,但我希望它有所帮助!
答案 1 :(得分:0)
您可以在“命名”中修改第101行中的/magento/js/tiny_mce/classes/Editor.js
// entity_encoding : 'named'
entity_encoding : 'raw'