教你怎么在Zblog博客上实现短代码功能
wp上有不少短代码插件,于是也想在自己的博客中弄。看了一下zblog,后台已经有不错的UE编辑器了,再去弄短代码感觉有点浪费时间,就直接在UE上加上实现,这样做还有一个好处,可以立刻显示出效果来。
制作起来也比较简单,首先定义好一些css代码,例如要实现上面的黄色框框,在css上定义
p.黄色文本框{ text-indent: 0em; color: #ad9948; background: #fff4b9 url('images/wpgo_sc_warn.png') -1px -1px no-repeat; border: 1px solid #eac946; overflow: hidden; margin: 10px 0; padding: 15px 15px 15px 35px; }
接下来是在UE中增加按钮:
var sf_shortcode_icon=[]; sf_shortcode_icon['绿色文本框']="background-position: -440px 0px;background-color: #ecf2d6;"; sf_shortcode_icon['红色文本框']="background-position: -440px 0px;background-color: #ffecea;"; sf_shortcode_icon['黄色文本框']="background-position: -440px 0px;background-color: #fff4b9;"; sf_shortcode_icon['灰色文本框']="background-position: -440px 0px;background-color: #eaeaea;"; sf_shortcode_icon['蓝色标题']="background-position: -400px -20px;"; UE.registerUI('绿色文本框 红色文本框 黄色文本框 灰色文本框 蓝色标题', function(editor, uiname) { var btn = new UE.ui.Button({ name: uiname, title: uiname, cssRules: sf_shortcode_icon[uiname], //点击时执行的命令 onclick: function() { var range = editor.selection.getRange(); range.select(); var txt = editor.selection.getText(); if(txt==null || txt==""){ txt="<br/>"; } editor.execCommand('insertHtml', '<p class="'+uiname+'">'+txt+'</p>'); } }); return btn; });
如此一来,就能在点击按钮的时候添加指定class的p标签了,是不是很简单?
div
最后看看这样的效果啦,没什么其他的东东了,来张截图吧