为后台添加标签按钮

0 Share

为后台添加标签按钮

很多文章类插件都需要在撰写的时候添加标签,但是这些插件并没有自动在后台编辑器上添加按钮,这里给出此问题的所有解决方案。

众所周知,很多文章类插件都需要在撰写的时候添加标签,比方说语法高亮插件 wp-syntax,以及之前介绍的 下载计数插件。但是这些插件并没有自动在后台编辑器上添加按钮,这需要我们去记忆那些标签,还要手动地输入。不常用的标签会忘记,常用的又懒得输入。这里给出此问题的所有解决方案。

今天 Souyu Sofish 小朋友介绍了 Easy2hide 这个欠扁的插件,在那里 小黑 小墨 同学问怎么在后台编辑器里面加个按钮。给出3个办法。

修改 quicktags.js 文件

打开 yourwordpress/wp-includes/js/quicktags.js , 搜索 edButtoms[edButtons.length] 找到:

edButtons[edButtons.length] = new edButton('ed_more' ,'more' ,'<!--more-->' ,'' ,'t' ,-1 );

在下面添加你自己的按钮,比如:

edButtons[edButtons.length] =new edButton(
'ed_moreandmore' ,
'moreandmore' ,
'<!--more more-->' ,
'' ,
't' ,
-1 );

那个 “ed_more” 就是按钮的 id ,“more”就是显示在后台的名字,“<!--more-->”是标签前缀,接着那个参数因为没有用到后缀而省略了,“t” 是快捷键,“-1”代表此标签不必闭合(可以不写,默认闭合)。

例如,为 wp-syntax 添加按钮,代码如下:

edButtons[edButtons.length] = new edButton('ed_syntax' ,'syntax' ,'<pre>' ,'</pre>' ,'' );

使用 AddQuicktag 插件

用这个插件可以很方便地添加很多按钮,适合长期工作在 HTML源代码 编辑模式下的同学。

作者主页介绍说支持 WordPress 2.7 。根据我的测试,这个插件当前版本不支持 WordPress 2.7 ,起码在我用来测试的官方中文版中是这样的。建议你先试试这个插件,如果不成的话请再参考第三种方法。

作者主页直接下载

修改插件

这个方法比第一种麻烦点,好处在于不用修改 WordPress 文件,省得升级后还要再次修改重复劳动;还有禁用了某插件之后不会留下一坨没有用处的按钮。这个方法来自上面提到的那款插件。

以 Easy2hide 的代码为例:

<?php
add_action('admin_footer', 'easy2hide_footer_admin');
function easy2hide_footer_admin() {
// Javascript Code Courtesy Of WP-AddQuicktag (http://bueltge.de/wp-addquicktags-de-plugin/120/)
?>
<script type="text/javascript">
if(e2h_toolbar = document.getElementById("ed_toolbar")){
easy2hideNr = edButtons.length;
edButtons[easy2hideNr] =
new edButton('ed_easy2hide'
,'easy2hide'
,'<!--easy2hide start-->'
,'<!--easy2hide end-->'
,'h'
);

var easy2hideBut = e2h_toolbar.lastChild;

while (easy2hideBut.nodeType != 1){
easy2hideBut = easy2hideBut.previousSibling;
}

easy2hideBut = easy2hideBut.cloneNode(true);
easy2hideBut.value = "easy2hide";
easy2hideBut.title = "Insert Hidden Words";
easy2hideBut.onclick = function () {edInsertTag(edCanvas,parseInt(easy2hideNr));}
e2h_toolbar.appendChild(easy2hideBut);
easy2hideBut.id = "ed_easy2hide";
}
</script>
<?php } ?>

修改建议就是,用一个有个性地单词(例如 lorzmore),把这里面的 easy2hide 统统替换掉,目的是为了不与现存的东东重名,尤其是标为蓝色的字。

代码中绿色部分,请参考第一种方法自行修改。然后把修改好的代码粘贴到你的插件主文件的末尾处,或者是你的主题中的 function.php 的末尾处

-------------手工分割线-------------

最近比较懒,而且还比较忙……睡觉去咯。

Comments ( 10 )

  1. Replyxiaorsz
    沙发!! 以后用第一种方法加过coolcode的!! 呵呵!第三种方法不错!!
  2. Replysofish
    上一个是可恶的插件,这一个是很可爱的插件,但这一次是可恶的人。
  3. Reply小墨
    呼呼~感谢~马上去试试~
  4. ReplyNetPuter
    嘿嘿,如果用第三种方法,又提高了所谓的用户体验咯~
    • Reply卢达
      体验可能是有的。但是一般用户也不会跑到我的后台来的吧……呵呵
  5. Replyice
    simple tag很好用啊
    • Reply卢达
      ……本文重点在于“按钮”。可能跟你说的不是同一个“标签”……
  6. Replyhome loan
    Lovely. Great site.
  7. Reply花莫笑
    使用 AddQuicktag 插件 很好用 现在不用去改程序了 免得每次升级都去改了 现在 支持新的版本了呢

Leave a reply

Your email address will not be published.