使用PHPCMS搭建wap手机网站


Posted in PHP onSeptember 20, 2015

下面给大家讲使用PHPCMS搭建wap手机网站的方法,具体内容请看下文。

首先在phpcms/libs/functions/extention.func.php里面写入判断手机访问的自定义函数

<?php
/**
 * extention.func.php 用户自定义函数库
 *
 * @copyright   (C) 2005-2010 PHPCMS
 * @license    
 * @lastmodify   2010-10-27
 */
//判断是否手机访问
function check_wap()
{
 if (isset($_SERVER['HTTP_VIA'])) return true;
 if (isset($_SERVER['HTTP_X_NOKIA_CONNECTION_MODE'])) return true;
 if (isset($_SERVER['HTTP_X_UP_CALLING_LINE_ID'])) return true;
 if (strpos(strtoupper($_SERVER['HTTP_ACCEPT']), "VND.WAP.WML") > 0) {
  // Check whether the browser/gateway says it accepts WML.
  $br = "WML";
 } else {
  $browser = isset($_SERVER['HTTP_USER_AGENT']) ? trim($_SERVER['HTTP_USER_AGENT']) : '';
  if (empty($browser)) return true;
  $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', 'opera mobi', 'openwave', 'nexusone', 'cldc', 'midp', 'wap', 'mobile'
  );
  if (preg_match("/(" . implode('|', $clientkeywords) . ")/i", $browser) && strpos($browser, 'ipad') === false) {
   $br = "WML";
  } else {
   $br = "HTML";
  }
 }
 if ($br == "WML") {
  return TRUE;
 } else {
  return FALSE;
 }
}
?>

然后在phpcms/templates/default模版文件夹里建立一个文件夹存放手机站的模版

我建立一个叫mobile的文件夹

然后修改
phpcms/templates/modules/content/index.php文件

麻烦点,分别在频道页,列表页,内容页加载模版时进行判断
比如:

 if (check_wap()) {
    include template('mobile', $template);
   } else {
    include template('content', $template);
   }

这样当用手机访问时会加载mobile文件夹里面的模版,mobile文件夹里面的模版名字要跟PC端的一样。
当然,在生成静态页面时会出现问题,目前解决的办法是手机端用动态,
调用数据时可以这样

<a href="index.php?m=content&c=index&a=show&catid=25&id={$r['id']}">

毕竟手机端的栏目不是很多。

关于使用PHPCMS搭建wap手机网站的全部内容就介绍完了,需要了解有关phpcms知识的,请持续关注本站,同时欢迎各位朋友

PHP 相关文章推荐
ip签名探针
Oct 09 PHP
如何将一个表单同时提交到两个地方处理
Oct 09 PHP
php Http_Template_IT类库进行模板替换
Mar 19 PHP
两个开源的Php输出Excel文件类
Feb 08 PHP
那些年一起学习的PHP(一)
Mar 21 PHP
destoon调用自定义模板及样式的公告栏
Jun 21 PHP
php邮件发送的两种方式
Apr 28 PHP
PHP Echo字符串的连接格式
Mar 07 PHP
PHP+sqlite数据库操作示例(创建/打开/插入/检索)
May 26 PHP
Yii2验证器(Validator)用法分析
Jul 23 PHP
php自定义排序uasort函数示例【二维数组按指定键值排序】
Jun 19 PHP
php面向对象重点知识分享
Sep 27 PHP
求帮忙修改个php curl模拟post请求内容后并下载文件的解决思路
Sep 20 #PHP
PHP执行SQL文件并将SQL文件导入到数据库
Sep 17 #PHP
如何使用PHP对网站验证码进行破解
Sep 17 #PHP
浅谈php+phpStorm+xdebug配置方法
Sep 17 #PHP
PHP 9 大缓存技术总结
Sep 17 #PHP
PHP判断来访是搜索引擎蜘蛛还是普通用户的代码小结
Sep 14 #PHP
php生成静态html页面的方法(2种方法)
Sep 14 #PHP
You might like
php 一元分词算法
2009/11/30 PHP
php disk_free_space 返回目录可用空间
2010/05/10 PHP
浅析ThinkPHP中的pathinfo模式和URL重写
2014/01/06 PHP
php实现插入数组但不影响原有顺序的方法
2015/03/27 PHP
php类的定义与继承用法实例
2015/07/07 PHP
javascript addBookmark 加入收藏 多浏览器兼容
2009/08/15 Javascript
jquery对象和DOM对象的任意相互转换
2016/02/21 Javascript
全面理解JavaScript中的继承(必看)
2016/06/16 Javascript
js中通过getElementsByName访问name集合对象的方法
2016/10/31 Javascript
Node.js数据库操作之连接MySQL数据库(一)
2017/03/04 Javascript
vue调用高德地图实例代码
2017/04/28 Javascript
关于angularJs清除浏览器缓存的方法
2017/11/28 Javascript
详解React项目的服务端渲染改造(koa2+webpack3.11)
2018/03/19 Javascript
原生js实现Flappy Bird小游戏
2018/12/24 Javascript
vue实现pdf文档在线预览功能
2019/11/26 Javascript
js实现简单的打印表格
2020/01/15 Javascript
打开电脑上的QQ的python代码
2013/02/10 Python
详解Python中for循环的使用方法
2015/05/14 Python
flask中主动抛出异常及统一异常处理代码示例
2018/01/18 Python
完美解决python中ndarray 默认用科学计数法显示的问题
2018/07/14 Python
python统计中文字符数量的两种方法
2019/01/31 Python
Django和Flask框架优缺点对比
2019/10/24 Python
利用OpenCV和Python实现查找图片差异
2019/12/19 Python
Python代码需要缩进吗
2020/07/01 Python
python3实现名片管理系统(控制台版)
2020/11/29 Python
英国羊皮鞋类领先品牌:Just Sheepskin
2019/12/12 全球购物
Skyscanner香港:机票比价, 平机票和廉价航空机票预订
2020/02/07 全球购物
大学生毕业自我鉴定范文
2013/09/19 职场文书
职业女性的职业规划
2014/03/04 职场文书
求职信标题怎么写
2014/05/26 职场文书
保卫钓鱼岛口号
2014/06/20 职场文书
励志演讲稿600字
2014/08/21 职场文书
单位委托书范本(3篇)
2014/09/18 职场文书
县政府办公室领导班子对照检查材料思想汇报
2014/09/28 职场文书
写景作文评语集锦
2014/12/25 职场文书
工厂员工辞职信范文
2015/05/12 职场文书