扩展wordpress的时候,修改的最多的就是主题的functions.php
文件,扩展了多了以后,functions会越来越庞大,对维护和以后的修改来说,会大大的不方便,出了问题也很难查找和恢复。
当然,我们可以使用include_once
来加载自定义的文件,这种方法也很简便,但是对于修改量大或者修改频繁的来说,也会存在上面的维护问题。
include_once('functions-user.php');
现在说的是另一种方法,只要添加一段代码到functions.php文件里,以后只要把扩展的文件加到定义的文件夹里,就会自动加载,不同的扩展使用单独的文件,出错了可以直接删除,方便又安全。
修改方法:
打开主题的functions.php
文件,插入以下代码:
define('INC', TEMPLATEPATH.'/inc');
IncludeAll( INC );
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;
}
}
}
}
以后每次为主题扩展功能的时候只要将代码保存为一个新的php文件,文件名不限,但最好是英文或数字,然后将文件放入到inc目录下即可,效果和直接将代码加到functions.php文件一样,不用一个一个的去include加载。而且一旦代码出错只要直接删除出错代码的文件即可。