这个方法与在php中使用include调用机制相同。

一般我们要在functions.php中给主题扩展其他功能时,都是直接在里面添加相应的代码,
为了更灵活的调用以及方便日后修改,可以使用类似 include('xxx/aaa.php'); 的语句,
这样就可以在functions.php中进行引用主题目录的xxx文件夹下的aaa.php文件,
相当于直接把aaa.php的内容写入functions.php当中。

而如果需要大量扩展functions.php的功能时,一句一句去添加也是很麻烦的事,
所以我们可以使用以下代码,实现但凡加入xxx文件夹中的php文件都将引用到functions.php当中去的功能。

首先在主题目录下新建一个名为jvadd的文件夹,然后添加以下代码:

// 任何添加于主题目录jvadd文件夹内的php文件都被调用到这里////////
define('jvadd', TEMPLATEPATH.'/jvadd');
IncludeAll( jvadd );
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;
            }
        }
    }
}

WordPress灵活的在functions.php中调用其他功能

如此一来就能往jvadd文件夹内添加php了,可以更灵活方便的扩展主题的functions.php !