下面給大家講使用PHPCMS搭建wap手機網站的方法,具體內容請看下文。
首先在phpcms/libs/functions/extention.func.php里面寫入判斷手機訪問的自定義函數
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
<?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文件
麻煩點,分別在頻道頁,列表頁,內容頁加載模版時進行判斷
比如:
1
2
3
4
5
|
if (check_wap()) { include template( 'mobile' , $template ); } else { include template( 'content' , $template ); } |
這樣當用手機訪問時會加載mobile文件夾里面的模版,mobile文件夾里面的模版名字要跟PC端的一樣。
當然,在生成靜態頁面時會出現問題,目前解決的辦法是手機端用動態,
調用數據時可以這樣
1
|
<a href= "index.php?m=content&c=index&a=show&catid=25&id={$r['id']}" > |
畢竟手機端的欄目不是很多。
關于使用PHPCMS搭建wap手機網站的全部內容就介紹完了,需要了解有關phpcms知識的,請持續關注本站,同時歡迎各位朋友