使用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 相关文章推荐
让你的网站首页自动选择语言转跳
Dec 06 PHP
phpinfo 系统查看参数函数代码
Jun 05 PHP
PHP中file_exists与is_file,is_dir的区别介绍
Sep 12 PHP
将word转化为swf 如同百度文库般阅读实现思路及代码
Aug 09 PHP
PHP文件锁函数flock()详细介绍
Nov 18 PHP
php编写简单的文章发布程序
Jun 18 PHP
PHP几个实用自定义函数小结
Jan 25 PHP
PHP6新特性分析
Mar 03 PHP
PHP简单检测网址是否能够正常打开的方法
Sep 04 PHP
ThinkPHP like模糊查询,like多匹配查询,between查询,in查询,一般查询书写方法
Sep 26 PHP
深入理解 PHP7 中全新的 zval 容器和引用计数机制
Oct 15 PHP
PHP lcfirst()函数定义与用法
Mar 08 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实现的英文名字全拼随机排号脚本
2014/07/04 PHP
如何让CI框架支持service层
2014/10/29 PHP
PHP rmdir()函数的用法总结
2019/07/02 PHP
有关PHP 中 config.m4 的探索
2020/08/26 PHP
PHP中SESSION过期设置
2021/03/09 PHP
得到文本框选中的文字,动态插入文字的js代码
2007/03/07 Javascript
用JS实现3D球状标签云示例代码
2013/12/01 Javascript
jQuery中parents()和parent()的区别分析
2014/10/28 Javascript
jQuery实现侧浮窗与中浮窗切换效果的方法
2016/09/05 Javascript
D3.js封装文本实现自动换行和旋转平移等功能
2016/10/14 Javascript
纯JS实现表单验证实例
2016/12/24 Javascript
JS表单数据验证的正则表达式(常用)
2017/02/18 Javascript
Angular2使用Augury来调试Angular2程序
2017/05/21 Javascript
浅谈React Native Flexbox布局(小结)
2018/01/08 Javascript
js 图片转base64的方式(两种)
2018/04/24 Javascript
策略模式实现 Vue 动态表单验证的方法
2019/09/16 Javascript
如何用vue-cli3脚手架搭建一个基于ts的基础脚手架的方法
2019/12/12 Javascript
在antd中setFieldsValue和defaultVal的用法
2020/10/29 Javascript
[06:25]DOTA2英雄梦之声_第17期_大地之灵
2014/06/20 DOTA
Python使用迭代器打印螺旋矩阵的思路及代码示例
2016/07/02 Python
python 获取网页编码方式实现代码
2017/03/11 Python
Python进阶-函数默认参数(详解)
2017/05/18 Python
python如何将图片转换为字符图片
2020/08/19 Python
Python Numpy库datetime类型的处理详解
2019/07/13 Python
python基于socket实现的UDP及TCP通讯功能示例
2019/11/01 Python
Desigual德国官网:在线购买原创服装
2018/03/27 全球购物
俄罗斯小米家用电器、电子产品和智能家居商店:Poood.ru
2020/04/03 全球购物
最新的大学生找工作自我评价
2013/09/29 职场文书
歌颂祖国的演讲稿
2014/05/04 职场文书
个人安全承诺书
2014/05/22 职场文书
弘扬焦裕禄精神践行三严三实心得体会
2014/10/13 职场文书
2014年学校党建工作总结
2014/11/11 职场文书
2015年企业新年寄语
2014/12/08 职场文书
虚拟机linux端mysql数据库无法远程访问的解决办法
2021/05/26 MySQL
浅谈Java实现分布式事务的三种方案
2021/06/11 Java/Android
基于Redis结合SpringBoot的秒杀案例详解
2021/10/05 Redis