以前每次折腾博客的时候,尤其是要往主题的functions.php添加功能的时候总要出错几次,还的重新上传文件才能解决,很麻烦。
也有好几个人留言说这样的情况了,我是暑假的时候在winysky博客上看到他说自己的主题结构,发现了include all PHP script这个功能,方法很简单。
在主题functions.php添加下面的代码:
define('theme_apps', TEMPLATEPATH.'/apps');
IncludeAll( theme_apps );
/**
* include all PHP script
*/
function IncludeAll($dir){
$dir = realpath($dir);
if($dir){
$files = scandir($dir);
sort($files);
foreach($files as $file){
if($file == '.' || $file == '..'){
continue;
}elseif(preg_match('/\.php$/i', $file)){
include_once $dir.'/'.$file;
}
}
}
}
然后在主题文件夹建立一个名为apps的文件夹,然后需要什么功能了,在这个文件夹内直接建立一个php文件就可以了,名称随意。
比如我要添加头像缓存这个功能,建立一个php文件,编码utf-8,内容如下:
<?php
/* Mini Gavatar Cache by Willin Kan. */
function my_avatar($avatar) {
$tmp = strpos($avatar, 'http');
$g = substr($avatar, $tmp, strpos($avatar, "'", $tmp) - $tmp);
$tmp = strpos($g, 'avatar/') + 7;
$f = substr($g, $tmp, strpos($g, "?", $tmp) - $tmp);
$w = get_bloginfo('wpurl');
$e = ABSPATH .'avatar/'. $f .'.jpg';
$t = 1209600; //設定14天, 單位:秒
if ( !is_file($e) || (time() - filemtime($e)) > $t ) { //當頭像不存在或文件超過14天才更新
copy(htmlspecialchars_decode($g), $e);
} else $avatar = strtr($avatar, array($g => $w.'/avatar/'.$f.'.jpg'));
if ( filesize($e) < 500 ) copy($w.'/avatar/default.jpg', $e);
return $avatar;
}
add_filter('get_avatar', 'my_avatar');
// -- END ----------------------------------------
然后在wp根目录建立个avatar文件夹就可以了,需要主题的是php文件头部一定要加
<?php
这样有什么好处呢,如果代码有错误,直接删除相关的php文件就可以,不必每次都备份上传functions文件了。
———————————————–唠叨分割线————————————————
开学了,我最近在干什么呢,课还是那样,不算多,交完了学费,排队真是困难,排了几个小时队,今天系里来人说让交钱时候小心,新班导携款逃跑。
偶尔研究下魔兽作弊,在d3scene这个国外论坛上找到了很多dll文件,直接注入就可以作弊了,比如刷钱,支持浩方,VS,Q对战平台,局域网。
很淫荡
还有就是博客的spam留言太多了,几天登陆一次博客,删的手都累。

