位置: IT常识 - 正文

phpcms实现移动端和电脑端不同模板(phpcms怎么样)

发布时间:2024-01-27
phpcms实现移动端和电脑端不同模板的方法:首先打开global.func.php文件;然后在最后面添加isMoblie()方法,用来判断手机端;最后在index.php文件中使用if进行判断,调用不同模板即可。

推荐整理分享phpcms实现移动端和电脑端不同模板(phpcms怎么样),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:phpcms使用教程,phpcms模板制作教程,phpcms手册,phpcms模块,phpcms使用教程,phpcms模块,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,否则为truereturn 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);phpcms实现移动端和电脑端不同模板(phpcms怎么样)

改成:

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目录。

这样就可以实现电脑端和手机端分别加载不同的模板。

PHP中文网,大量的免费PHPCMS教程,欢迎在线学习!

本文链接地址:https://www.jiuchutong.com/zhishi/311642.html 转载请保留说明!

上一篇:详说Python风格的函数分配参数(python的基本风格)

下一篇:帝国CMS会员注册加入问答验证的方法(帝国cms会员注册天数自动升级会员组)

  • iqoo8怎么关闭用户体验计划(iqoo怎么关闭应用)

    iqoo8怎么关闭用户体验计划(iqoo怎么关闭应用)

  • iphone13pro支持双卡吗(iphone13pro支持双卡5g吗)

    iphone13pro支持双卡吗(iphone13pro支持双卡5g吗)

  • 小米如何关闭只在wlan下下载(小米如何关闭只读功能)

    小米如何关闭只在wlan下下载(小米如何关闭只读功能)

  • 阿里云邮箱如何在邮箱内修改密码(阿里云邮箱如何登录)

    阿里云邮箱如何在邮箱内修改密码(阿里云邮箱如何登录)

  • 小米6开启ROOT权限教程(小米6开启root权限没有找到该应用)

    小米6开启ROOT权限教程(小米6开启root权限没有找到该应用)

  • 微信语音通话铃声怎么设置(微信语音通话铃声在哪里设置)

    微信语音通话铃声怎么设置(微信语音通话铃声在哪里设置)

  • realmex50pro玩家版和普通版的区别(realmex50pro玩家版多重)

    realmex50pro玩家版和普通版的区别(realmex50pro玩家版多重)

  • kindle能做笔记吗(kindle能够做笔记吗)

    kindle能做笔记吗(kindle能够做笔记吗)

  • 华为p9带nfc功能吗(华为手机p9的nfc在哪里设置)

    华为p9带nfc功能吗(华为手机p9的nfc在哪里设置)

  • 笔记本怎么投屏到显示器(笔记本怎么投屏到手机上)

    笔记本怎么投屏到显示器(笔记本怎么投屏到手机上)

  • 抖抖音怎么用一个手机号注册两个号(抖音怎么用抖一抖)

    抖抖音怎么用一个手机号注册两个号(抖音怎么用抖一抖)

  • 闲鱼给永久封了咋办(闲鱼永久封了怎么解绑支付宝)

    闲鱼给永久封了咋办(闲鱼永久封了怎么解绑支付宝)

  • 什么软件可以修改PDF文件(什么软件可以修图瘦身)

    什么软件可以修改PDF文件(什么软件可以修图瘦身)

  • 无线路由器恢复出厂设置后连不上网(无线路由器恢复出厂设置)

    无线路由器恢复出厂设置后连不上网(无线路由器恢复出厂设置)

  • cad编辑器和cad软件有什么区别(cad编辑器与cad软件一样吗)

    cad编辑器和cad软件有什么区别(cad编辑器与cad软件一样吗)

  • 微视是什么东西(微视是什么?)

    微视是什么东西(微视是什么?)

  • 被别人拉黑了发信息别人能收到吗(被别人拉黑了发朋友圈他那还显示吗)

    被别人拉黑了发信息别人能收到吗(被别人拉黑了发朋友圈他那还显示吗)

  • 删除了微信好友再添加对方能看到吗(删除了微信好友还能加回来吗)

    删除了微信好友再添加对方能看到吗(删除了微信好友还能加回来吗)

  • 苹果手机怎么在手机上面下载铃声到手机里(苹果手机怎么在图片上编辑文字)

    苹果手机怎么在手机上面下载铃声到手机里(苹果手机怎么在图片上编辑文字)

  • iphone11双卡怎么设置(iphone11双卡怎么切换号码打电话)

    iphone11双卡怎么设置(iphone11双卡怎么切换号码打电话)

  • 60帧4k和30帧4k的区别(4k60帧和30帧区别 视频)

    60帧4k和30帧4k的区别(4k60帧和30帧区别 视频)

  • dll文件不乱码打开编辑方式(dll格式的文件)

    dll文件不乱码打开编辑方式(dll格式的文件)

  • Linux 批量替换内容的命令行方法(linuxvim批量替换)

    Linux 批量替换内容的命令行方法(linuxvim批量替换)

  • 房地产业所得税
  • 房产税从价计征如何算
  • 公司汽车上牌费入什么科目
  • 应付利润借方有余额怎么处理
  • 今年成立的公司,残保金是否要申报
  • 加计抵减税金分录
  • 计提所得税费用的账务处理
  • 银行收单业务员做什么的
  • 减免的所得税额怎么入账
  • 多交税款如何处罚
  • 资产减值测试是什么意思
  • 利润表中利润总额是什么
  • 公司名义看望病人合法吗
  • 资产负债表最后要平吗
  • 当月未认证发票分录
  • 普票红冲部分金额的发票怎么开
  • 营改增后可以抵扣的范围
  • 报税提示您可能缺少相关组件怎么处理
  • 新企业残保金免交三年超过30人
  • 工程项目关闭
  • 发票上月开本月到账要交企业所得税吗?
  • 营运资金投资额计算公式
  • 合伙企业年度汇缴申报
  • 收到转账支票怎么填写凭证
  • 小规模零申报资产负债表报错了要交印花税吗
  • 戴尔r710服务器系统安装详解
  • 房屋租赁费应如何缴纳
  • 工业增加值计算公式是什么
  • 子公司代总公司付款
  • 贴吧热门评论
  • 党建活动室投入使用
  • wordpress用什么语言开发
  • 微信公众平号平台
  • 企业上交财政款分录
  • cqi映射表
  • php面向对象编程实验总结
  • 企业应付账款的会计分录
  • 小规模纳税人要交企业所得税吗?
  • 定时任务java
  • 总结的拼音
  • uname命令功能
  • vue数据加载完成显示页面过渡动画
  • 网上学电脑的软件
  • 职工教育经费具体比例
  • 上缴税金怎么算税额
  • 学习笔记——Django项目的删除数据、查询数据(filter、get、exclude)
  • 异地工程税
  • 私募基金成立的规模条件
  • 企业车辆年检费多少钱
  • 项目差旅费能计入项目费用吗
  • 小微企业所得税优惠政策最新2023
  • 增值税进项加计抵减怎么计算
  • 工资总额借方和贷方的区别
  • 公司开普票和专票税率一样吗
  • 差旅费具体包括哪些
  • 企业需要购买两种保险吗
  • 基建并账时用交付使用资产对冲基建拨款
  • 民办幼儿园账务月末结转
  • 怎么才能不开发票
  • 开劳务发票需要的资料有哪些?
  • 退货对方不开具红字发票怎么办
  • 对外贸易出口公司
  • 咨询服务公司的经营范围
  • 材料采购成本的计算分录
  • sql server 2012r2
  • sqlserver substring函数使用方法小结
  • windows7如何获得正版
  • WINDOWS7系统安装包
  • Win10 Mobile RS2预览版WiFi设置页面将和pc页面相同
  • ubuntu20.04安装samba
  • opengl怎么学
  • 利用nodejs实现百度文本审核
  • 2024年全年计划
  • cmd nul
  • js实现滑动效果
  • js中数组排序sort的用法
  • 深圳市税务局官网电话号码
  • 唐山宴订餐电话是多少
  • 福建省地方税务局杨静
  • 房地产企业预缴税款最新规定
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号