wordpress插件开发(2)中写了一个简单的插件。它最大的不足在于不能订制信息,需要替换的字符串和替换信息都是写死在程序中。在这个版本里要就解决这个问题。
wordpress提供了两种方式来把数据保存到数据库,一个是用options panels,一个是创建自己的数据表。这次介绍的是第一种方法。
我对options panels的理解:它是wordpress提供的一个模板,按照它的标签方便地定义自己的字段,并对其进行保存,修改。
方法add_option($key,$value)将数据库以key-value的形式保存,get_option($key)则将key对应的value取出。
一、修改管理页面
1.创建form
这里的action要指定为 options.php。在你提交时,wrodpress会转向这个页面进行处理。
2. nonce Magic
官方对这条语句的说明:
This will insert two hidden fields which automatically help to check that the user
can update options and also redirect the user back to the correct admin page (because the form action is a different page).
考到php页面里就是了。效果就是看当前用户是否可以修改数据,修改之后跳转到正确的页面并且给出提示。
3.添加option
如上所示,每个option都以fieldset标签包装起来,我们要做的事情只是修改一下字段的名称。取名时注意,尽量独特,可以加上自己的域名或是函数名。
4.提交按钮
这没啥说嘀…只是_e()这个方法牵扯到了本地化的问题,以后再研究…
5.action字段
<input type=”hidden” name=”action” value=”update” />
这是必须的。
6. page_options字段
这也是必须的。这是用来指定哪些字段需要更新,各字段用逗号分开。
7.关闭form
这不用多说了,
搞定。
二、初始化插件参数
当插件启用时,可以将一些默认数据通过options的方式保存到数据库。如以下方法:
当插件被激活时调用这个方法。所以要再加上一个action:
第一个参数中,MyCopyright/myCopyright.php为初始化函数所在的php文件路径,而前面要加上”active_”前缀。
第二个参数指定了初始化函数名称。
这样,在插件初次启用时,就会向数据库中插入数据,之后可以通过get_option()方法得到它。
三、用户界面
插件页会自动加载 wp后台的样式表,只要在我们的页面上指定对应的class就可以了。
如:
当然也可以自已定义自己的样式。
四、插件下载
MyCopyright plugin
十 09
This entry was posted on 星期二, 十月 9th, 2007 at 11:18 上午and is filed under 技术资料. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.
2 条评论 wordpress插件开发(3)-用options panels保存你的数据
QQ328496647
七月 22nd, 2010 at 1:33 上午
1我正在开发一个插件,被你上述所说给卡住了,update_option保存数据进数据库前我能有什么方法把数据过滤一遍再让他存进去,比如有个表单要让用户填数字,如果为空我就默认为4,可是插进去就为空,我有什么办法让它先执行一遍我的自定义的函数再让它保存,上边是我的联系方式,谢谢你能帮我找到我苦苦寻长了好几天依然无果的答案。
Sunshow
七月 22nd, 2010 at 9:17 下午
2add_action(’pre_update_option_’ . $optionname, ‘your_filter_function’, 100, 2);
function your_filter_function($newvalue, $oldvalue) {
return $newvalue;
}
RSS feed for comments on this post · TrackBack URI
Leave a Reply