phpcms实现移动端和电脑端不同模板的方法
发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,phpcms实现移动端和电脑端不同模板的方法?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!phpcms实现移动端和电
千家信息网最后更新 2025年12月02日phpcms实现移动端和电脑端不同模板的方法
phpcms实现移动端和电脑端不同模板的方法?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!
phpcms实现移动端和电脑端不同模板
1、首先打开phpcms/libs/functions/global.func.php,在文件最后面加一个isMobile()方法,用来判断是否是手机端打开
function isMobile() { // 如果有HTTP_X_WAP_PROFILE则一定是移动设备 if (isset($_SERVER['HTTP_X_WAP_PROFILE'])) { return true; } // 如果via信息含有wap则一定是移动设备,部分服务商会屏蔽该信息 if (isset($_SERVER['HTTP_VIA'])) { // 找不到为flase,否则为true return stristr($_SERVER['HTTP_VIA'], "wap") ? true : false; } // 脑残法,判断手机发送的客户端标志,兼容性有待提高。其中'MicroMessenger'是电脑微信 if (isset($_SERVER['HTTP_USER_AGENT'])) { $clientkeywords = array('nokia','sony','ericsson','mot','samsung','htc','sgh','lg','sharp','sie-','philips','panasonic','alcatel','lenovo','iphone','ipod','blackberry','meizu','android','netfront','symbian','ucweb','windowsce','palm','operamini','operamobi','openwave','nexusone','cldc','midp','wap','mobile','MicroMessenger'); // 从HTTP_USER_AGENT中查找手机浏览器的关键字 if (preg_match("/(" . implode('|', $clientkeywords) . ")/i", strtolower($_SERVER['HTTP_USER_AGENT']))) { return true; } } // 协议法,因为有可能不准确,放到最后判断 if (isset ($_SERVER['HTTP_ACCEPT'])) { // 如果只支持wml并且不支持html那一定是移动设备 // 如果支持wml和html但是wml在html之前则是移动设备 if ((strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') !== false) && (strpos($_SERVER['HTTP_ACCEPT'], 'text/html') === false || (strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') < strpos($_SERVER['HTTP_ACCEPT'], 'text/html')))) { return true; } } return false;}2、然后打开phpcms/modules/content/index.php,有三个地方要改的
a)找到首页的init方法,在最后加载模板的时候,做一个判断,如果是手机端打开就加载手机端模板,如果是电脑端打开就加载电脑端模板
大概在31行找到:
include template('content','index',$default_style);改成:
if(isMobile()){ include template('mobile','index',$default_style);}else{ include template('content','index',$default_style);}b)找到内容页的show方法,同样在最后加载模板的时候做一个判断
大概在203行找到:
include template('content',$template);改成:
if(isMobile()){ include template('mobile',$template);}else{ include template('content',$template);}c)找到列表页的lists方法,同样在最后加载模板的时候做一个判断
大概在265行和278行,这里有两处,找到:
include template('content',$template);改成:if(isMobile()){ include template('mobile',$template);}else{ include template('content',$template);}在你当前的模板目录下新建一个mobile目录,用来存放手机端模板
如果你当前的模板目录是phpcms/templates/default,那么你就在phpcms/templates/default下面建一个mobile目录。
如果你当前的模板目录是phpcms/templates/moban,那么你就在phpcms/templates/moban下面建一个mobile目录。
这样就可以实现电脑端和手机端分别加载不同的模板。
感谢各位的阅读!看完上述内容,你们对phpcms实现移动端和电脑端不同模板的方法大概了解了吗?希望文章内容对大家有所帮助。如果想了解更多相关文章内容,欢迎关注行业资讯频道。
模板
电脑
移动
手机
方法
目录
内容
不同
设备
时候
支持
信息
文章
问题
三个
关键
关键字
兼容性
商会
地方
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
索拉卡网络技术
网络安全 数据合规
数据库的执行命令记录
网络安全创新能力50强
自己搭建服务器建的邮箱安全吗
上海网络技术开发质量服务
数据库实现增删
数据库中的隐藏文件怎么恢复
侦测服务器中标项目
青岛智能未来软件开发
药品和保健品数据库
数据库各表之间的计算
消费金融软件开发协议
桂电网络安全导师推荐
dell服务器无法识别usb
科举小说软件开发
数据库的实验报告存在的问题
网络安全宣传动漫
网络安全是连续过程吗
大型分布式游戏服务器
数据库工程师笔试题
网络技术课件ppt
戴尔服务器进安全模式
中国青少年网络安全知识竞赛
工业设备报价制图软件开发
网络技术项目合同
汉中新华互联网科技学校
顺义区咨询软件开发
南京信息软件开发商家
关于网络安全小卫士手抄报视频