使用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 相关文章推荐
php下HTTP Response中的Chunked编码实现方法
Nov 19 PHP
PHP MVC模式在网站架构中的实现分析
Mar 04 PHP
php输入流php://input使用浅析
Sep 02 PHP
php递归法读取目录及文件的方法
Jan 30 PHP
php约瑟夫问题解决关于处死犯人的算法
Mar 23 PHP
Yii2简单实现多语言配置的方法
Jul 23 PHP
PHP使用xpath解析XML的方法详解
May 20 PHP
php数据库的增删改查 php与javascript之间的交互
Aug 31 PHP
Laravel Validator自定义错误返回提示消息并在前端展示
May 09 PHP
Laravel框架Eloquent ORM修改数据操作示例
Dec 03 PHP
PHP类的自动加载与命名空间用法实例分析
Jun 05 PHP
搭建PhpStorm+PhpStudy开发环境的超详细教程
Sep 17 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 远程图片保存到本地的函数类
2008/12/08 PHP
PHP PDO函数库详解
2010/04/27 PHP
php中关于普通表单多文件上传的处理方法
2011/03/25 PHP
php.ini中date.timezone设置分析
2011/07/29 PHP
判断Keep-Alive模式的HTTP请求的结束的实现代码
2011/08/06 PHP
解析php dirname()与__FILE__常量的应用
2013/06/24 PHP
smarty获得当前url的方法分享
2014/02/14 PHP
PHP魔术方法__GET、__SET使用实例
2014/11/25 PHP
wordpress安装过程中遇到中文乱码的处理方法
2015/04/21 PHP
PHP会话控制实例分析
2016/12/24 PHP
php提交表单时保留多个空格及换行的文本样式的方法
2017/06/20 PHP
详解PHP 7.4 中数组延展操作符语法知识点
2019/07/19 PHP
用JavaScript脚本实现Web页面信息交互
2006/10/11 Javascript
JQuery动态创建DOM、表单元素的实现代码
2011/08/09 Javascript
jQuery LigerUI 使用教程表格篇(1)
2012/01/18 Javascript
HTML复选框和单选框 checkbox和radio事件介绍
2012/12/12 Javascript
使用原生js实现页面蒙灰(mask)效果示例代码
2014/06/20 Javascript
iPhone手机上搭建nodejs服务器步骤方法
2015/07/06 NodeJs
详解Bootstrap glyphicons字体图标
2016/01/04 Javascript
JS实现Select的option上下移动的方法
2016/03/01 Javascript
node实现简单的反向代理服务器
2017/07/26 Javascript
View.post() 不靠谱的地方你知道多少
2017/08/29 Javascript
jQuery选择器中的特殊符号处理方法
2017/09/08 jQuery
nodemon实现Typescript项目热更新的示例代码
2019/11/19 Javascript
vue setInterval 定时器失效的解决方式
2020/07/30 Javascript
jQuery实现动态加载瀑布流
2020/09/01 jQuery
python利用跳板机ssh远程连接redis的方法
2019/02/19 Python
python获取地震信息 微信实时推送
2019/06/18 Python
python实现的多任务版udp聊天器功能案例
2019/11/13 Python
在Python中实现函数重载的示例代码
2019/12/12 Python
Python内置函数locals和globals对比
2020/04/28 Python
解决pytorch 的state_dict()拷贝问题
2021/03/03 Python
UNDONE手表官网:世界领先的定制手表品牌
2018/11/13 全球购物
2014年教师党员公开承诺书
2014/05/28 职场文书
孩子满月酒答谢词
2015/09/30 职场文书
MySQL中in和exists区别详解
2021/06/03 MySQL