POST TIME:2020-04-10 20:37
linux主机Apache Web Server环境搭建的DeDeCMS,要实现Tag伪静态,需要使用.htaccess设置Rewrite规则,具体实现请按如下步骤操作。
1、进入dedecms后台,开启伪静态
2、打开目录 include aglib ag.lib.php 文件查找
$row[‘link’] = $cfg_cmsurl.”/tags.php?/”.urlencode($row[‘keyword’]).”/”;
替换为
$row[‘link’] = $cfg_cmsurl.”/tags/”.urlencode($row[‘id’]);
到一步,Tag的链接已经修改成tags/12/的形式了。这种目录形式非常好,很利于收录,包括我们做长尾关键词优化。
3、然后,找到arc.taglist.class.php,大约70行的如下代码:
$this->TagInfos = $this->dsql->GetOne(“Select * From `dede_tagindex` where tag like ‘{$this->Tag}’ “);
修改为:
$this->TagInfos = $this->dsql->GetOne(“Select * From `dede_tagindex` where id like ‘{$this->Tag}’ “);
4、默认的单独tags页面中,title也会变成id的形式,这是不友好的,需要进行如下的替换:
找到taglist.htm中的所有{dede:field.title /},把这个替换成:
{dede:sql sql=”select tag from dede_tagindex where id=~title~”}[field:tag/]{/dede:sql}
5、设置apache Rewrite规则
新建.htaccess文件,具体内容为:
RewriteEngine OnRewriteBase /RewriteRule ^tags/(.*)$ /tags.php?/$1
6、最后生成一遍全站,就成功了。