帝国cms使用wap版手机网站伪静态实现方法


帝国cms的wap功能是一个实现手机版比较边界且自由度高的方法,但这其中也有一些问题,就是地址只有动态地址,这样对收录似乎并不好。

这里我们以这套模板的wap端为例,来讲一下帝国cms的wap端实现伪静态的方法。

一、wap端模板的路径

首先我们说明一下,wap端的模板是存储在文件当中,地址为 /e/wap/template/ ,这其中有index.temp.php  list.temp.php  show.temp.php,分别对应首页、列表页、内容页。

二、文件修改

我们打开index.temp.php文件,也就是首页模板,其中list.php为列表页链接,show.php为内容页链接。

我们在第31行看到如下代码:

$classurl="list.php?classid=".$r[classid]."&style=".$wapstyle."&bclassid=".$bclassid;

假设我们要把地址伪静态为 /e/wap/list-8.html ,我们将上面的链接代码修改为如下:其中classid即栏目id,style和bclassid对应模板样式和父栏目id,这两项可不填写。

$classurl="list-".$r[classid]."html";

接下来是内容页链接地址,内容页地址是在wap版灵动标签中通过函数生成,函数在/e/wap/wapfun.php文件第527行,代码如下:其他地方类似,包含list链接的地方都修改为如上的方式。

$titleurl='show.php?classid='.$r[classid].'&id='.$r[id].'&style='.$wapstyle.'&bclassid='.$class_r[$r[classid]

我们也将其修改为静态化的地址,这里需要注意,classid及id两项为必须,其他可忽略:

$titleurl='show-'.$r[classid].'-'.$r[id].'.html';

上面是首页及灵动标签中地址的修改,接下来我们看列表页,打开list.temp.php文件,其中的代码与上面类似,修改方式可参考上方,例如第52行定义的内容页地址:我们也将其修改为静态化的地址,这里需要注意,classid及id两项为必须,其他可忽略:

$titleurl="show.php?classid=".$r[classid]."&id=".$r[id]."&style=".$wapstyle."&cpage=".$page."&cid=".$classid."&bclassid=".$bclassid;

文件修改完之后,我们还需要相应的伪静态规则来实现地址链接的rewrite,大家可根据自己的服务器环境选择。三、伪静态规则

apache:

Options +FollowSymLinks
RewriteEngine on 

RewriteRule ^(.*)/e/wap/index.html$ $1/e/wap/index.php 
RewriteRule ^(.*)/e/wap/list-([0-9]+).html$ $1/e/wap/list.php?classid=$2 
RewriteRule ^(.*)/e/wap/show-([0-9]+)-([0-9]+).html$ $1/e/wap/show.php?classid=$2&id=$3 

nginx:

location / { 
rewrite ^(.*)/e/wap/index.html$ $1/e/wap/index.php 
rewrite ^(.*)/e/wap/list-([0-9]+)\.html$ $1/e/wap/list.php?classid=$2 
rewrite ^(.*)/e/wap/show-([0-9]+)-([0-9]+)\.html$ $1/e/wap/show.php?classid=$2&id=$3 
 } 

 

声明:Sandy'Blog|版权所有,违者必究|如未注明,均为原创|本网站采用BY-NC-SA协议进行授权

转载:转载请注明原文链接 - 帝国cms使用wap版手机网站伪静态实现方法


一流的吃貨,二流的廚藝,三流的技術,下流的人品