原文来自:https://www.zixuephp.com

dede实现手机wap浏览

–进入正题

首先,在模块里安装手机wap浏览,如果本地没有也可以从网上下载,切记要区分编码gbk,utf8,下载好直接点安装就ok了.

然后直接在网址后加/wap.php便可访问手机版本网站,只不过比较丑,相当的丑.

朋友,你可以根据你的需要修改模板,下面谈谈文章的调用及php修改,一般手机浏览,需要实现首页,栏目页,文章页三大主要页面,当然还有其它的页面,添加模板即可,同样的道理dede实现手机wap浏览.

安装成功后,会自动生成几个文件,包括wap.php/wap.inc.php及其它所需的模板文件,自己的模板,则按需实现文章及栏目的调用即可.

来看一下php代码《wap.php》都是按照自己的需要来添加.

  1. $dsql->SetQuery("Selectid,typenameFrom`detest_arctype`whereidin(37)");
  2. $dsql->Execute();
  3. while($row=$dsql->GetObject())
  4. {
  5. $wangfeng.="id='ying'>{$row->typename}";
  6. }

上述代码是调用频道,最主要的是sql语句了,根据自己需要修改,$wangfeng表示所调用的频道,id='ying'表示显示的样式.

  1. $dsql->SetQuery("SELECTid,title,pubdateFROM
  2. detest_archivesWHEREchannel=1andtypeidin(166,167,168,169,170,171)ORDERBYidDESClimit0,4");
  3. $dsql->Execute();
  4. while($row=$dsql->GetObject())
  5. {
  6. $yingxiong.="<liCLASS='jp002wena'><ahref='wap.php?action=article&amp;id={$row->id}'id='wen'>".ConvertStr($row->title)."</a></li>";
  7. }

上述代码是调用文章的语句,在模板上调用文章时只需使用{$yingxiong}即可.

再看模板文件:

  1. <?php
  2. $varlist="cfg_webname,title,channellist,cfg_templeturl,newartlist,writer,typename,body";
  3. ConvertCharset($varlist);
  4. $pageBody.="<?xmlversion='1.0'encoding='gb2312/utf-8'
  5. ?>

上述代码是模板文件的头,因为wap手机网站使用的是wml语言,是wap手机站与网站的主要区别,首页模板如果需要调用文章,则必须加上title和body,蓝色部分要与网站数据编码一致,一定要搞清楚,编码害人不浅丫.

下面来看看配置文件wap.inc.php,该配置文件其实是实现了html语言到wml语言的转换,其中:

  1. functionConvertCharset($varlist)
  2. {
  3. global$cfg_soft_lang;
  4. if(eregi('utf',$cfg_soft_lang))return0;
  5. $varlists=explode(',',$varlist);
  6. $numargs=count($varlists);
  7. for($i=0;$i<$numargs;$i++)
  8. {
  9. if(isset($GLOBALS[$varlists[$i]]))
  10. {
  11. $GLOBALS[$varlists[$i]]=gb2utf8($GLOBALS[$varlists[$i]]);
  12. }
  13. }
  14. return1;
  15. }

一定要看看清楚,这是gbk到utf8的转换,根据自己网站的编码修改代码,实现转换,这个问题折腾了一上午.

好了,这样就基本实现了手机wap浏览了,非常简单,希望对亲们有所帮助,手机网站正在完善当中,问题会及时补充的,dede实现手机wap浏览.