原文来自:https://www.zixuephp.com
dede实现手机wap浏览
–进入正题
首先,在模块里安装手机wap浏览,如果本地没有也可以从网上下载,切记要区分编码gbk,utf8,下载好直接点安装就ok了.
然后直接在网址后加/wap.php便可访问手机版本网站,只不过比较丑,相当的丑.
朋友,你可以根据你的需要修改模板,下面谈谈文章的调用及php修改,一般手机浏览,需要实现首页,栏目页,文章页三大主要页面,当然还有其它的页面,添加模板即可,同样的道理dede实现手机wap浏览.
安装成功后,会自动生成几个文件,包括wap.php/wap.inc.php及其它所需的模板文件,自己的模板,则按需实现文章及栏目的调用即可.
来看一下php代码《wap.php》都是按照自己的需要来添加.
- $dsql->SetQuery("Selectid,typenameFrom`detest_arctype`whereidin(37)");
- $dsql->Execute();
- while($row=$dsql->GetObject())
- {
- $wangfeng.="id='ying'>{$row->typename}";
- }
上述代码是调用频道,最主要的是sql语句了,根据自己需要修改,$wangfeng表示所调用的频道,id='ying'表示显示的样式.
- $dsql->SetQuery("SELECTid,title,pubdateFROM
- detest_archivesWHEREchannel=1andtypeidin(166,167,168,169,170,171)ORDERBYidDESClimit0,4");
- $dsql->Execute();
- while($row=$dsql->GetObject())
- {
- $yingxiong.="<liCLASS='jp002wena'><ahref='wap.php?action=article&id={$row->id}'id='wen'>".ConvertStr($row->title)."</a></li>";
- }
上述代码是调用文章的语句,在模板上调用文章时只需使用{$yingxiong}即可.
再看模板文件:
- <?php
- $varlist="cfg_webname,title,channellist,cfg_templeturl,newartlist,writer,typename,body";
- ConvertCharset($varlist);
- $pageBody.="<?xmlversion='1.0'encoding='gb2312/utf-8'
- ?>
上述代码是模板文件的头,因为wap手机网站使用的是wml语言,是wap手机站与网站的主要区别,首页模板如果需要调用文章,则必须加上title和body,蓝色部分要与网站数据编码一致,一定要搞清楚,编码害人不浅丫.
下面来看看配置文件wap.inc.php,该配置文件其实是实现了html语言到wml语言的转换,其中:
- functionConvertCharset($varlist)
- {
- global$cfg_soft_lang;
- if(eregi('utf',$cfg_soft_lang))return0;
- $varlists=explode(',',$varlist);
- $numargs=count($varlists);
- for($i=0;$i<$numargs;$i++)
- {
- if(isset($GLOBALS[$varlists[$i]]))
- {
- $GLOBALS[$varlists[$i]]=gb2utf8($GLOBALS[$varlists[$i]]);
- }
- }
- return1;
- }
一定要看看清楚,这是gbk到utf8的转换,根据自己网站的编码修改代码,实现转换,这个问题折腾了一上午.
好了,这样就基本实现了手机wap浏览了,非常简单,希望对亲们有所帮助,手机网站正在完善当中,问题会及时补充的,dede实现手机wap浏览.