多主题设置方法(需要改内核)


因CMF5不支持插件控制,所以,讲需要修改内核的方法发布出来。

打开\simplewind\cmf\controller\HomeBaseController.php

找到$cmfDefaultTheme = config('cmf_default_theme');

将这句替换成下面的代码:

    $regex = '/android|adr|iphone|ipad|windows\sphone|kindle|gt\-p|gt\-n|rim\stablet|opera|meego/i';
    //UC浏览器是傻逼!
    $mobile = false;
    if (GetVars('alwaystheme', 'COOKIE') == 'mobile') {
        $mobile = true;
    }
    if (preg_match($regex, GetVars('HTTP_USER_AGENT', 'SERVER'))) {
        $mobile = true;
    }
    if (GetVars('alwaystheme', 'COOKIE') == 'pc') {
        $mobile = false;
    }
    if ($mobile) {
        $cmfDefaultTheme = “手机端主题ID”;
    }else{
        $cmfDefaultTheme = config('cmf_default_theme');
    }

然后随便找个地方写这个函数

function GetVars($name, $type = 'REQUEST') {
    $array = &$GLOBALS[strtoupper("_$type")];
 
    if (isset($array[$name])) {
        return $array[$name];
    } else {
        return null;
    }}

扩展:

可根据情况设置“微信”对应的主题、“PC”对应的主题、“手机”对应的主题。


评论

暂时关闭,稍后恢复~
文档请看10遍以上!有问题可加QQ群!
发表话题

源素材推荐

提问必知

0.话题发布后没及时显示,请联系官方QQ群管理;
1.话题支持代码,qq截屏直接粘贴,和QQ群一样;
2.问题描述清,比如服务器版本,程序版本;
3.能上代码,就不用文字;
4.把问题发到话题后再发QQ群;
5.如果感觉回复者解答的不错,可以发红包!
6.多帮助别人也是对自己的锻炼!
7.付费讨论中只有提问者和付费用户才可以查看回复

积分规则

1.评论积分+1;每天最多10次奖励
2.发布话题积分+1;每天最多5次奖励
3.垃圾评论积分-500;
4.黄色,暴力,违反我国法律评论直接封号


ThinkCMF 8.0.0发布啦!祝大家节日快乐! 立即体验!