每次写点小插件都会想不起那些繁杂的filters到底叫些什么,此帖用于不定期记录以备忘。
Contents
添加URL重写规则
经常性需求。比如需要添加一个/submit而又不想新建页面,又或想增强文章列表以使得其能按某几种特定规则排序。添加Rewrite规则可以有两种形式:
- 在后台设置固定链接的过程中添加。此种方式通过一次设置把处理过的新规则写入数据库。
- 在每个访问请求时添加,好处是写代码时便于测试。
前一种在一些常用插件中会有存在。后一种比较少见,牵涉到的filter是transient_rewrite_rules,变量$rules。相关的文件及函数列表:
- /wp-includes/rewrite.php,WP_Rewrite::wp_rewrite_rules()
- /wp-includes/functions.php,get_transient()
以上filter在2.9.2版中已移除。
添加Query Vars
经常性需求,与上一段关系密切。filter是query_vars,变量$vars。
列印所有数据库查询
先作一个常量声明,$wpdb就会把所有的查询记录下来。
在页面底部输出即可
可以先在页面底部输出查询数,如查询数过高,再来列印详细找出问题所在。
更换域名或网址
先确认需要替换的行
mysql> select option_value from wp_options where option_value like 'http://%';
mysql> update wp_options set option_value = 'http://newaddress' where option_value like 'http://olddomain%'
Related posts:
- 只给新访客显示广告的php代码 在落伍者论坛看到一篇帖子,说“回头客多了 反而不赚钱了”。正验证了此前的建议可能是有意义的:只给通过搜索引擎进入网站的访客展示Adsense广告。 事实上自去年在一个老外blog上(具体地址忘了)看到有人这么提出之后,我就一直在这么实行。具体的方法就是先检测referer,判断用户来路并设置cookie。以此作为是否显示广告的依据。 先检测用户来路 check_referer(); function check_referer() { global...
- WordPress主题berita几处修改记录 前阵子看到这篇《使用WordPress定制企业网站》介绍的berita这个主题。界面我很喜欢,以前也确曾帮朋友用wordpress做过企业网站,于是就去下载了官方原版来用。 当然世事无完美,更没有什么主题能够完全适应各种需求。使用中发现了一些小问题,或者仅仅是不符合个人需求之处,做了一些改动,特此记录。 选择空分类作为博客页 设置面板里Blog Section Settings->Pick Category for Your Blog...
- 使用XMLRPC发布文章到wordpress $xmlrpcurl='http://efrees.com/blog/xmlrpc.php'; $username='admin'; $password='password'; ...
- IXWebHosting主机使用评价 我是2010年1月5日买的Unlimited Pro Plan,号称不限容量不限带宽不限域名,并附赠三个域名及15个独立IP,只需$7.95每月。便宜,而且,支持支付宝付款。 吸引我购买的首要原因是,附赠独立IP。我有太多站放在godaddy的同一个IP上了,把它们分散到多个IP去也许是不错的选择。另则,支持支付宝也很重要,付款更便捷了。 但在购买之后,并没有按原定计划迁移网站。因为,往ixwebhosting迁移网站实在是太困难了。主要是,不支持SSH,极不方便。 首先,导入mysql数据就是个大问题,动辄几十上百兆的SQL,没有SSH的情况,随便导一个都足以让人崩溃。挂个PHP脚本去导吧,导上一小段就提示“Server shutdown in progress”。 就连web内容迁移也很困难,打个包ftp传上去再解压这样的要求很正常吧。但是,不知何故,ixwebhosting的那个在线的文件管理器,解压个wordpress的安装包都总是有大部分文件没解出来。那怎么办,随便一个网站,几千个小文件,挂上ftp一个个传呗,传上三四个小时传完那是幸运的。...