wordpress主题functions.php实例几则
wordpress强大的函数功能,让一切不可能都变成了现实。而wordpress 3.0显得更为复杂,甚至可以说是臃肿。不过借助它的强大,我们完全可以DIY属于自己的wordpress。
位于主题目录下的functions.php,就是我们自定义主题函数的集散地。通过在functions.php里添加短短几行代码,就可以实现众多的功能。
一、删除more标签截断处的跳转
我一直使用的最为原始的方法,用插入more标签实现文章截断功能,然而read more链接会变成如下的形式:
<a class="more-link" href="http://www.kisa747.com/1.html#more-447">阅读全文</a>
点击它会自动跳到#more-447的位置,很不爽。凭借wordpress强大的add_filter函数,实现这点太小kiss了。
在functions.php内添加以下代码:
代码参考自:Domety»《自定义more标签的more跳转》
// 取消more截断的more标签
function remove_more_jump_link($link) {
return preg_replace('/#more-\d+/i','',$link);
}
add_filter('the_content_more_link', 'remove_more_jump_link');
二、自动替换Dropbox的外链地址
众所周知,Dropbox的所有外链地址,无论是http还是https,如今都被屏蔽了。其实Dropbox还有一个外链地址https://dl-web.dropbox.com,暂时还能用。尽管它也岌岌可危,尽管我明白我这么做实在加速Dropbox的离去。
1、替换dl.dropbox.com为dl-web.dropbox.com。
同理,在functions.php内添加以下代码:
// 自动替换Dropbox的外链地址
function replace_dropbox($content) {
return preg_replace('/https?:\/\/dl.dropbox.com\/+/i','https://dl-web.dropbox.com/',$content);
}
add_filter('the_content', 'replace_dropbox');
为什么我要用正则来匹配呢?
嘿嘿,当有一天早上醒来,打开https://dl-web.dropbox.com/,提示你该页被重置时。不要震惊,你可以淡定地将代码修改为下面的代码,其中红色文字,需做对应修改,你懂的。
// 自动替换Dropbox的外链地址
function replace_dropbox($content) {
return preg_replace('/https?:\/\/dl.dropbox.com\/u\/3633907\/+/i','http://img.kisa747.com/',$content);
}
add_filter('the_content', 'replace_dropbox');
三、禁用半角符号自动转换为全角
wordpress默认会转换文章中的半角符号为全角,可以借助下面代码去掉这个过度关心的功能。
同理,在functions.php内添加以下代码:
//禁用半角符号自动转换为全角
remove_filter('the_content', 'wptexturize');
» 转载本站文章请注明,转载自:kisa747's world »《wordpress主题functions.php实例几则》

真要感谢WP的强大呀,还要感谢正则的强大,哈哈
强强联手,更无敌
我在function加了十几个功能 太拥挤了
我的function比你的更多,这点代码与wordpress程序本身比起来,冰山一角而已
文章很好,先收藏了!
学习了