[插件开发]获知文章状态变化
文章(post)是 WordPress 博客的核心价值所在,围绕一篇文章的增、删、改,我们可以开发很多有用的插件。近来,由于维护一款插件的需要,我碰巧研究了一下围绕文章发布流程而设立的一些钩子(hook)。微有所得,记录备查。
事情的起因是插件中的一个函数hook到了一个action上,名字是publish_post,顾名思义,在文章发布时候被激发的。为了要更清楚地掌控这个action,我想在源代码中,把触发点给找出来,这一找,问题来了。理论上,我们hook任何action,WP内部都会有对应的do_action来激发这个钩子,这一次,一搜,根本没有publish_post,那就有点小麻烦,说明具体激发哪个钩子,是运行时决定的,再明白点说吧,这个action的名字,应该使用变量拼出来的,所以我们直接搜publish_post很难找到调用点。
在插件管理页面给你的插件添加“设置”链接
在插件管理页面,每个插件下面有2-3个Action link,包含了用户可以对该插件进行的几种操作。在插件为禁用状态时,可用的操作有:Activate(启用),Edit(编辑),Delete(删除);在插件为已经启用的状态下,默认有两个可用的操作:Deactivate(禁用)和Edit(编辑)。如果我们在这个列表里仔细观察,就会发现,有些插件会多出一个Settings(设置)操作。本文记录了,为插件添加Settings link的方法。没有什么过多的描述,直接放代码了。在插件主要文件中(包含了插件信息注释语句的那个文件),使用下面的代码,就可以为这个插件添加一个Settings link了。
[插件开发]:检测WP插件的运行环境
WP的插件在开发完成后,会在用户的服务器上运行,而用户的服务器环境基本上可以用千奇百怪来形容。开发过程中,在本地运行得好好的插件的,一旦安装到用户的服务器上,也有可能变得无法运行。
所以,作为WP插件的开发者,最好不要对插件最终的运行环境做任何假设。而且,最好能够在插件被启用的时候,进行必要的检查,给用户以提示,对于自己没法兼容的问题,应该明确指出,避免用户遭遇不必要的麻烦。
在我个人的WP插件开发过程中,我主要遇到的问题,基本上都是PHP相关的问题。
[插件开发]:后台管理页面脚本按需加载
插件的后台管理页面的主要功能是协助用户设定插件运行时参数,一般都需要用户进行交互,这就少不了需要客户端脚本的参与(主要是js脚本,当然还有配套的css样式表)。
WP的后台本身就已经加载了许多的脚本,包括各类类库和基础功能的脚本。过多的脚本文件引入,会增加HTTP请求,增加流量,拖慢速度。好在,WP的后台已经采取了相当多的措施,来管理后台加载的脚本。首先是用wp-dependency管理依赖关系,用load-scripts来压缩、并加载脚本,使得各种类库被合并到同一个文件中进行加载,节省了HTTP请求数量和流量。
WordPress插件:CSDN Shared Items
我在CSDN上分享了很多东西,一直想把那个列表也在博客上罗列一个,一直就没有付诸于行动,昨天一发狠,终于弄了。
等于昨天几个小时,今天几个小时,搞出了一个小插件。就是右侧的一个小挂件。点上去就会链到CSDN的下载页面。
算是我把一年前的债还了。真开心。
如何才能按需加载脚本?
本文提出问题,并不解决问题。
我在研究Extended Live Archive(ELA)插件的代码,发现一个问题,这个问题具有一定的共性,而且,我现在也没有什么好的解决办法,所以我把它描述一下,看看有没有高人高见。
怎样撰写Features List
当开发好一款插件的时候,要为插件撰写一个readme.txt文件,这是让用户了解你的插件的最好方式。很多插件都会在readme.txt的第一个section(description)里,附上一个简单明了的features list,以便用户可以快速扫描你插件包含的功能,决定是否选用。那么应该如何撰写features list呢?本文为您介绍。
我不是一个撰写readme.txt的专家,但是我经常需要做这件事情,我自己也很不在行,从来没有仔细研究过这件事情,今天在这里写下的是我第一次研究的笔记。对本文内容的权威性,大家请自己斟酌。
Simple Paypal Donate插件
Simple Paypal Donate是一款在博客中插入捐赠按钮的插件,但是其功能并不尽如人意,本文记录我对这款插件的改进意见。
WordPress插件:选项查看器
选项查看器是一款能够查看WordPress选项的工具,使用它,你可以浏览每个存储到数据库的选项的值,串行化的数据会恢复其原貌,此外,您可以使用PHP语句来微调选项的值。这是一款开发调试辅助工具。Options Inspector is a tool with which you can list out all the options in your database, view a certain one in detail, and alter exactly a certain part of option value. It is mainly designed for plugin developers and theme designers.
Flash Mp3 Player FAQ
Author of this document: Snowblink
Actually, I'm lazy, and I hate paper work. My dear friend, Snowblink, created this document. Thank her very much!
非常感谢snowblink的辛勤工作,我不知道如何才能用英语表达对你的感谢。所以用中文再说一遍!
WordPress Plugin: Embedded Slideshow
English version is under construction...
If you have any question please use the contact form in this site to send me a email.
此插件用于帮助用户在编辑日志或者页面的时候,轻轻松松插入Picasa相册的幻灯。
提示:WP Thread Comment插件与WP2.7兼容问题
Updated:目前该插件的功能已经修复了~~
今天凌晨,Leo提出了给霍霍更换WP2.7,操作完成后,发现WP Thread Comment插件的后台直接评论回复功能失效。
这里特别提醒想要升级到WP2.7并且同时在使用WP Thread Comment插件的朋友,目前的WP Thread Comment插件版本的后台评论回复功能无法正常使用。
WordPress插件介绍:cformsII 及其汉化包
Updated: 终于与插件原作者取得了联系,得到了作者的支持,本文链接已经被列到了官方插件主页上,热情的作者还帮忙制作了标题图片的汉化版本。本文底部的下载也就顺便升级到了9.3版本。
一直以来想给自己的博客添加联系表单功能,但是一直也没有碰到好的插件,直到在后台的最流行插件推荐那里,看到了cformsII,一款强大无匹的表单插件。cforms意思为custom forms,就是自定义表单的意思。
这款插件的主要功能有:
WP插件介绍:让不同页面帖子数不同
Different Posts per Page
本站推出联系表单
一直以来,想给博客添加一个Contact Me,但是一直都没有付诸行动。上周,这个任务进入到了我的本周必须完成的任务列表里面,所以,昨天晚上我一鼓作气就给搞定了。
以后各位朋友跟我联系就会方便很多了。嘿嘿~~
也因此发现了一款非常强大的插件cformsII,真是不错,我目前正在汉化这个插件,虽然说,官方页面上有一个汉化包提供的,不过我个人觉得那个做得实在很差,很多字符串没有翻译,尤其是帮助部分。我估计那个汉化作者只是个英语专业的人才,对于博客,尤其WordPress,还有对于HTML,CSS等等知识很有限,所以,翻成那个样子也不能太怪他。我决定我自己来翻译一下,就当作是一个锻炼好了。
插件升级:Flash MP3 Player
插件主页在这里!FAQ
又好久没有写博客了,不过,我确实一直没有离开WP的阵营,每天还在坚持着折腾一下WP,哈哈。由于我又开了一个生活日记类型的博客,所以,这里,我就打算只写些跟WP有关,跟技术有关的东西了。而这些天一直没有更新这个博客的原因,我只能说,有一些与WP相关,但是更加激动人心的事情让我着迷。
终于,又有一个老外朋友碰到了播放器插件不兼容PHP4的问题,让我下定决心把这个问题给解决了。今天,花了好多时间,我终于把这个问题给处理掉了,并且在PHP4.8.8上测试通过了,当然理论上是支持PHP4.3.0以后的版本的。
关于WKC Clear的简短说明
升级到WP Kit CN最新版本的朋友可能会看到多出来一个插件,就是WKC Clear。
以前,由于一个我也搞不清楚的原因,WP会把WP Kit CN中的热评文章Widget和高级友链Widget认为是两个单独的插件,导致这两个Widget在加载前,就被WP认为是已经加载了,最后结果就是没法在后台出现。
WKC Clear的作用就是把这两个非法注册到系统,但是实际上又不存在的两个插件给清除掉的工具。按照我原来的设想,这个插件启用后,后台就会出现6个Widget了,可是实际的结果是,启用这个东西后,热评文章和高级友链就肯定出不来了,但是再把WKC Clear禁用掉,6个就会都出现了。也就是说,这个东西的使用方法就是先启用,再禁用。
WordPress 插件:CSS Cache Buster
众所周知,浏览器一般会缓存CSS文件,以节省下载量和提高页面显示速度,这种机制就叫做缓存。
但是,缓存也有一定的弊端。如果您的CSS文件已经更改,但是浏览器不知道,而缓存下来的CSS文件也没有过期,浏览器仍旧会使用缓存中的CSS文件,也就是旧的样式。
当然,很多有经验的用户都知道,只要使用Ctrl+F5,强制刷新浏览器,就可以让浏览器下载新的样式表文件了,但是作为一个博客网站,你不可能让你的每个用户都去自己Ctrl+F5一下,很傻是不?
WordPress插件本土化:秀出你的评论数!
今天,要介绍给大家的这款插件叫做Liz Comment Counter(点进去吧,去Ozh那里看看美丽的截图,和详尽的介绍,e文滴--b),这是由著名的插件达人Ozh编写的,由著名的篡改达人Charles篡改 -_-## 寒一下~~~(表拍砖)
说白了,效果很简单啦,就是像本站右边栏那样的,看起来有点像FeedSky的统计图标。当然,那个颜色是可以调整的,后面的字也是可以调整的,完全自定义!!这就是Ozh的强大。

Most Commented Posts