使用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 相关文章推荐
编译问题
Oct 09 PHP
推荐Discuz!5的PHP代码高亮显示与实现可运行代码
Mar 15 PHP
phpmyadmin 访问被拒绝的真实原因
Jun 15 PHP
php中json_encode中文编码问题分析
Sep 13 PHP
php的XML文件解释类应用实例
Sep 22 PHP
ThinkPHP路由详解
Jul 27 PHP
详解php中反射的应用
Mar 15 PHP
php简单统计中文个数的方法
Sep 30 PHP
PHP 类与构造函数解析
Feb 06 PHP
PHP使用栈解决约瑟夫环问题算法示例
Aug 27 PHP
PHP基于DateTime类解决Unix时间戳与日期互转问题【针对1970年前及2038年后时间戳】
Jun 13 PHP
php5.3/5.4/5.5/5.6/7常见新增特性汇总整理
Feb 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的中问验证码
2006/11/25 PHP
php通过文件头检测文件类型通用代码类(zip,rar等)
2010/10/19 PHP
PHP session有效期session.gc_maxlifetime
2011/04/20 PHP
十幅图告诉你什么是PHP引用
2015/02/22 PHP
php常用数组array函数实例总结【赋值,拆分,合并,计算,添加,删除,查询,判断,排序】
2016/12/07 PHP
PHP实现的堆排序算法详解
2017/08/17 PHP
Laravel学习教程之View模块详解
2017/09/18 PHP
如何在centos8自定义目录安装php7.3
2019/11/28 PHP
js保存当前路径(cookies记录)
2010/12/14 Javascript
更换select下拉菜单背景样式的实现代码
2011/12/20 Javascript
JavaScript实现列表分页功能特效
2015/05/15 Javascript
让JavaScript中setTimeout支持链式操作的方法
2015/06/19 Javascript
JS平滑无缝滚动效果的实现代码
2016/05/06 Javascript
JavaScript实现打印星型金字塔功能实例分析
2017/09/27 Javascript
使用原生js封装的ajax实例(兼容jsonp)
2017/10/12 Javascript
JS和JQuery实现雪花飘落效果
2017/11/30 jQuery
Vue实现简易购物车页面
2020/12/30 Vue.js
如何使用RoughViz可视化Vue.js中的草绘图表
2021/01/30 Vue.js
[07:12]2014DOTA2西雅图国际邀请赛 黑马Liquid专题采访
2014/07/12 DOTA
九步学会Python装饰器
2015/05/09 Python
virtualenv 指定 python 解释器的版本方法
2018/10/25 Python
pyspark对Mysql数据库进行读写的实现
2020/12/30 Python
惠普墨西哥官方商店:HP墨西哥
2016/12/01 全球购物
英国最大的化装舞会服装网站:Fancydress.com
2017/08/15 全球购物
师范大学应届生求职信
2013/11/21 职场文书
简历中求职的个人自我评价
2013/12/03 职场文书
应用艺术毕业生的自我评价
2013/12/04 职场文书
应用心理学个人的求职信
2013/12/08 职场文书
创建服务型党组织实施方案
2014/02/25 职场文书
国家助学金感谢信
2015/01/21 职场文书
2015年第十五个全民国防教育日宣传活动方案
2015/05/06 职场文书
地道战观后感300字
2015/06/04 职场文书
运动会入场词
2015/07/18 职场文书
工作简报怎么写
2015/07/21 职场文书
决心书格式及范文
2019/06/24 职场文书
码云(gitee)通过git自动同步到阿里云服务器
2022/12/24 Servers