豆豆

【实现PC端访问PC模板 [www.xx.com]、手机端访问WAP模板 [m.xx.com]】

twcms添加手机端模板:
修改程序代码【实现PC端访问PC模板 [www.xx.com]、手机端访问WAP模板 [m.xx.com]】

详细方法:
1、打开\twcms\model\runtime_model.class.php;
2、找到public function xget($key = 'cfg') {    大概在36行左右
3、将下面新函数代码覆盖掉原来的
  1. // 读取
  2.         public function xget($key = 'cfg') {
  3.                 if(!isset($this->data[$key])) {
  4.                         $this->data[$key] = $this->get($key);
  5.                         if($key == 'cfg' && empty($this->data[$key])) {
  6.                                 $cfg = (array)$this->kv->get('cfg');

  7.                                 empty($cfg['theme']) && $cfg['theme'] = 'default';

  8.                                 $cfg['tpl'] = $cfg['webdir'].(defined('F_APP_NAME') ? F_APP_NAME : APP_NAME).'/view/'.$cfg['theme'].'/';
  9.                                 $cfg['webroot'] = '//'.$cfg['webdomain'];
  10.                                 $cfg['weburl'] = '//'.$cfg['webdomain'].$cfg['webdir'];
  11.                                 $cfg['waproot'] = '//'.$cfg['wapdomain'];
  12.                                 $cfg['wapurl'] = '//'.$cfg['wapdomain'].$cfg['webdir'];

  13.                                 $table_arr = $this->models->get_table_arr();
  14.                                 $cfg['table_arr'] = $table_arr;

  15.                                 $mod_name = $this->models->get_name();
  16.                                 unset($mod_name[1]);
  17.                                 $cfg['mod_name'] = $mod_name;

  18.                                 $this->data[$key] = &$cfg;
  19.                                 $this->set('cfg', $this->data[$key]);
  20.                         }
  21.                 }
  22.                 
  23.                 //需要实时判断
  24.                 if($key == 'cfg' && is_mobile()){
  25.                         $cfg = (array)$this->kv->get('cfg');
  26.                         
  27.                         $this->data['cfg']['theme'] =  'mobile_theme';
  28.                         $this->data['cfg']['tpl'] = $this->data['cfg']['webdir'].(defined('F_APP_NAME') ? F_APP_NAME : APP_NAME).'/view/mobile_theme/';
  29.                         
  30.                         $cfg['webroot'] = '//'.$cfg['wapdomain'];
  31.                         $cfg['weburl'] = '//'.$cfg['wapdomain'].$cfg['webdir'];
  32.                         
  33.                                 if($_SERVER['HTTP_HOST']==$cfg['webdomain']){
  34.                                         if(empty($_SERVER['QUERY_STRING'])){
  35.                                                 Header("Location: $cfg[weburl]");
  36.                                         }else{
  37.                                                 $urlcs = str_replace('rewrite=','',$_SERVER['QUERY_STRING']);
  38.                                                 $url = '//'.$cfg['wapdomain'].$cfg['webdir'].$urlcs;
  39.                                                 Header("Location: $url");
  40.                                         }
  41.                                 }
  42.                 }
  43.                 return $this->data[$key];
  44.         }
复制代码
其中$cfg['wapdomain']就是你自定义的wap域名,可以写死,可以去自己去后台管理 代码里添加一个新字段,当然这个比较灵活。

修改方法参考:
http://www.twcms.cc/thread-2-1-1.html
http://www.twcms.cc/thread-14-1-1.html

#1楼
发帖时间:7月前   |   查看数:0   |   回复数:4
雅风
我直接做响应式模板了
7月前 #2楼
baidu2018
测试了,不管用,有错误提示
6月前 #3楼
apyingan
也是不管用  
3月前 #4楼
sxnh756
还是响应式模板比较方便一些
3月前 #5楼
游客组