在DEDECMS(织梦内容管理系统)中实现手机WAP浏览,可以通过安装手机WAP浏览模块来实现,以下是详细的步骤和说明:
安装手机WAP浏览模块
1、下载并安装模块:
需要在模块管理中安装手机WAP浏览模块,如果本地没有该模块,可以从网上下载,需要注意的是,下载时必须区分编码格式(GBK或UTF8)。
下载完成后,直接点击安装即可。
2、访问手机版网站:
安装成功后,可以直接在网址后加上/wap.php
来访问手机版网站,不过,初始的界面可能会比较简陋。
修改模板和PHP代码
1、生成文件:
安装成功后,会自动生成几个文件,包括wap.php
、wap.inc.php
及其他所需的模板文件。
2、调用频道和文章:
在wap.php
文件中,可以根据需要添加PHP代码来调用频道和文章,以下代码用于调用频道:
$dsql>SetQuery("Select id, typename From#@__arctype
where id in(37)");
$dsql>Execute();
while($row=$dsql>GetObject())
{
$wangfeng .= "<a href='wap.php?action=list&id={$row>id}' id='ying' >{$row>typename}</a>";
}
以下代码用于调用文章:
$dsql>SetQuery("SELECT id, title, pubdate FROM #@__archives WHERE channel=1 and typeid in(166,167,168,169,170,171) ORDER BY id DESC limit 0,4"); $dsql>Execute(); while($row=$dsql>GetObject()) { $yingxiong .= "<li CLASS='jp002 wena'><a href='wap.php?action=article&id={$row>id}' id='wen'>".ConvertStr($row>title)."</a></li>"; }
在模板上调用文章时,只需使用{$yingxiong}
即可。
3、模板文件头:
WAP手机网站使用的是WML语言,因此模板文件的头部需要有所不同。
<?php $varlist = " cfg_webname, title, channellist, cfg_templeturl, newartlist, writer, typename, body "; ConvertCharset($varlist); $pageBody .= "<?xml version='1.0' encoding=' gb2312/utf8 ' ?>";
如果首页模板需要调用文章,则必须加上title
和body
,并且蓝色部分要与网站数据编码一致。
配置文件wap.inc.php
1、HTML到WML的转换:
wap.inc.php
文件主要用于实现HTML语言到WML语言的转换。
function ConvertCharset($varlist) { global $cfg_soft_lang; if(eregi('utf',$cfg_soft_lang)) return 0; $varlists = explode(',',$varlist); $numargs=count($varlists); for($i = 0; $i < $numargs; $i++) { if(isset($GLOBALS[$varlists[$i]])) { $GLOBALS[$varlists[$i]] = gb2utf8($GLOBALS[$varlists[$i]]); } } return 1; }
这段代码实现了从GBK到UTF8的转换,根据自己网站的编码进行相应修改。
IIS设置
1、重定向和绑定域名:
在IIS中,可以为www.abc.com
下的wap
文件夹设置重定向,并创建新站点wap.abc.com
绑定文件夹wap
。
手机访问www.abc.com
时,会自动跳转到wap.abc.com
。
FAQs
问题1:如何在DEDECMS中实现手机WAP浏览?
答:在模块管理中安装手机WAP浏览模块,然后直接在网址后加上/wap.php
来访问手机版网站,根据需要修改模板和PHP代码,实现首页、栏目页和文章页的调用,配置wap.inc.php
文件以实现HTML到WML的转换。
问题2:如何修改模板文件以适应WAP浏览?
答:WAP手机网站使用的是WML语言,因此模板文件的头部需要使用WML语言,可以在模板文件中添加如下代码:
<?php $varlist = " cfg_webname, title, channellist, cfg_templeturl, newartlist, writer, typename, body "; ConvertCharset($varlist); $pageBody .= "<?xml version='1.0' encoding=' gb2312/utf8 ' ?>";
这样可以实现HTML到WML的转换,并根据需要调用相应的文章和频道。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1228962.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复