默认模板钩子示例

hook默认模板文件实现一个应用多套模板功能
标识template_hook_example
版本号1.0
文件大小18.8KB
发布时间2026-02-27
作者 1CMS
获取
请在网站后台-应用商店内安装此应用.

更改了默认模板的首页,仅做演示用,通过hook cms:nowTemplate 实现自定义其他应用的模板文件


/**
* @hook function=cms:nowTemplate;requires=args.1.class\=template
*/
function nowTemplate($config){
    //如果当前应用下存在需要引入的同名模板文件,则使用当前应用的
    if(is_file(classDir(I()).$config['file'])){
        //将httpdir更改为当前应用下,模板中使用{template}时,会输出,不再使用原应用下的css等
        $config['httpdir']=template_url(I());

        //修改模板模板文件为当前应用下的文件
        $config['filepath']=classDir(I()).$config['file'];

        return array('cms:nowTemplate',$config);
    }
}