15621857753

phpcmsV9如何将URL默认中文TAG改为ID形式

来源:齐鲁建站 栏目:开发教程 阅读: 日期:2021-02-14

本文介绍了phpcmsV9如何将URL默认中文TAG改为ID形式,大家都知道phpcmsV9的TAG链接URL使用的是中文格式,这样转码的时候会显的很长,同时有可能对SEO也有一定的影响,那么本教程就教大家将中文TAG改为ID的形式。

先说例子,大体是这样:

中文形式:index.php?m=content&c=tag&a=lists&tag=中文

ID形式:index.php?m=content&c=tag&a=lists&id=5

打开/phpcms/modules/content/tag.php

在lists方法内找到

$tag = safe_replace(addslashes($_GET['tag']));
$keyword_data_db = pc_base::load_model('keyword_data_model');
//获取标签id
$r = $this->keyword_db->get_one(array('keyword'=>$tag, 'siteid'=>$this->siteid), 'id');

改成:

$keyword_data_db = pc_base::load_model('keyword_data_model');
if ($_GET['id']) {
$id = safe_replace(addslashes($_GET['id']));
$v = $this->keyword_db->get_one(array('id'=>$id, 'siteid'=>$this->siteid), 'id,keyword');
} else {
$tag = safe_replace(addslashes($_GET['tag']));
$v = $this->keyword_db->get_one(array('keyword'=>$tag, 'siteid'=>$this->siteid), 'id,keyword');
}

继续向下:

找到:

if (!$r['id']) showmessage('不存在此关键字!');
$tagid = intval($r['id']);

看到里面的$r没有,改成$v

接着往下:

53-54行(大约)里面找到$tag改成$v[‘keyword’] 共四处

然后找到:

$SEO = seo($siteid, '', $tag);

改成

$SEO = seo($siteid, '', $v['keyword']);

接下来就是改模板,因为模板有一处显示GET来的标签名称

/phpcms/templates/default/content/tag_list.html的第五行的标签后面{$tag}改成{$v[‘keyword’]}

这样就可以了。

以上就是关于phpcms修改TAG的所有内容,希望可以帮到大家,欢迎找小编一起交流~

展开