DedeCMS可以為網(wǎng)站增加大量的頁(yè)面,必須處理得當(dāng),否則會(huì)產(chǎn)生非常多的垃圾頁(yè)面。頁(yè)面SEO優(yōu)化的三要素Title、Keywords、Description。最重要的是Title,而TAG頁(yè)面沒(méi)有對(duì)應(yīng)的Descripition描述,可以把當(dāng)前TAG標(biāo)簽寫成描述也可以,但不靈活,下面提供為TAG標(biāo)簽增加描述,如圖
數(shù)據(jù)庫(kù)部分修改
用Navicat數(shù)據(jù)庫(kù)管理工具打開dede_tagindex數(shù)據(jù)表,依次點(diǎn)擊文件 -> 設(shè)計(jì)表,如圖
新建tagms字段,類型varchar,長(zhǎng)度255,允許空值。
管理后臺(tái)部分修改
打開后臺(tái)/dede/tags_main.php,大概在27行找到
$dlist->SetParameter("tag", $tag);
下面增加
$dlist->SetParameter("tagms", $tagms); //by www.vi586.com
大概在49行找到(下面紅色的分隔符請(qǐng)去除)
$query = "UPDATE `#分隔符@__tagindex` SET `count`='$count' WHERE id='$tid' ";
修改為
$query = "UPDATE `#分隔符@__tagindex` SET `count`='$count',`tagms`='$tagms' WHERE id='$tid' ";
大概在147行找到
$query = " INSERT INTO `#分隔符@__tagindex`(`tag`,`count`,`total`,`weekcc`,`monthcc`,`weekup`,`monthup`,`addtime`) VALUES('$keyword','0','1','0','0','$timestamp','$timestamp','$timestamp');";
修改為
$query = " INSERT INTO `#分隔符@__tagindex`(`tag`,`tagms`,`count`,`total`,`weekcc`,`monthcc`,`weekup`,`monthup`,`addtime`) VALUES('$keyword','$tagms','0','1','0','0','$timestamp','$timestamp','$timestamp');";
打開/dede/templets/tags_main.htm,找到更新的JS
function UpdateOne(tid) { location = "tags_main.php?action=update&count="+document.getElementById('count'+tid).value+"&tid="+tid;
增加描述的參數(shù),代碼修改為
function UpdateOne(tid)
{
location = "tags_main.php?action=update&count="+document.getElementById('count'+tid).value+"&tagms="+document.getElementById('ms'+tid).value+"&tid="+tid;
找到
<td width="10%">標(biāo)簽</td>
下面增加
<td width="35%">描述</td>
找到
<td> <a href="../tags.php?/<?php echo urlencode($fields['tag']); ?>/" target="_blank">{dede:field.tag /}</a> </td>
下面增加
<td> <textarea name="" rows="" cols="" id="ms<?php echo $fields['id']; ?>" ><?php echo $fields['tagms'];?></textarea> </td>
由于增加了一列,后臺(tái)其他地方的樣式就自行解決了。
打開/include/taglib/tag.lib.php,找到
$row['link'] = $cfg_cmsurl."/tags.php?/".urlencode($row['keyword'])."/";
修改為
$row['link'] = $cfg_cmsurl."/tags/php?/".urlencode($row['id'])."/";
打開/include/arc.taglist.clss.php,找到(下面出現(xiàn)的分隔符請(qǐng)去掉)
$this->TagInfos = $this->dsql->GetOne("Select * From `#分隔符@__tagindex` where tag like '{$this->Tag}' ");
修改為
$this->TagInfos = $this->dsql->GetOne("Select * From `#分隔符@__tagindex` where id like '{$this->Tag}' ");
模板部分調(diào)用
{dede:sql sql="select * from dede_tagindex where id=~title~"}[field:tagms/]{/dede:sql}
其他調(diào)用方法參考文章《DedeCMS把TAG的URL替換成ID》