使用PHPCMS搭建wap手机网站
程序员文章站
2022-10-31 13:23:16
下面给大家讲使用phpcms搭建wap手机网站的方法,具体内容请看下文。
首先在phpcms/libs/functions/extention.func.php里面写入判...
下面给大家讲使用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知识的,请持续关注本站,同时欢迎各位朋友