織夢CMS作為一個使用率極高的建站程序,自身其良好的SEO功能特征得到了許多個人站長和企業(yè)站的青睞。但是也有一些不利于網(wǎng)站優(yōu)化的地方,比如織夢默認的TAG標簽URL都是動態(tài)的,做過SEO優(yōu)化的站長都知道動態(tài)鏈接不利于網(wǎng)站優(yōu)化,那要如何才能實現(xiàn)織夢tag標簽靜態(tài)化呢?
下文將把我親自操作的過程經(jīng)驗分享給大家,教如何使用織夢tag標簽頁面靜態(tài)化插件實現(xiàn)靜態(tài)化頁面:
織夢tag頁面靜態(tài)化說明
本插件適用于DedeCMS 5.7版本,GBK和UTF編碼編碼格式均有效,可以生成TAG首頁靜態(tài)文件和網(wǎng)站所有TAG列表靜態(tài)頁面文件。修改之前請備份好相關(guān)原始文件,先來看一下修改完成之后的效果
http://m.aktdz.com/tags.php?/%E6%88%90%E9%83%BDSEO/ //默認tag鏈接 http://m.aktdz.com/tag/chengduseo_1_1.html //修改之后鏈接
本人在織夢DedeCMS5.7版本UFT編碼下測試有效,2019年6月1日
織夢tag頁面靜態(tài)化修改步驟
1、在網(wǎng)站根目錄創(chuàng)建tag文件夾(小寫)
2、在織夢后臺SQL命令運行器中,執(zhí)行以下代碼:
ALTER TABLE `dede_tagindex` ADD `maketime` INT( 10 ) UNSIGNED NOT NULL DEFAULT '0';
3、增加文件:
templets/default/list_tag.htm //可直接使用文章列表頁模板,復(fù)制修改文件名即可 templets/default/index_tag.htm //可從tag.htm復(fù)制 dede/makehtml_tag_action_list.php dede/makehtml_tag_action_index.php dede/makehtml_tag.php dede/templets/makehtml_tag.htm include/arc.taghtml.class.php
4、修改文件:
找到dede/inc/inc_menu.php文件,大約在142-150行左右的位置,插入:
<m:item name='更新TAG靜態(tài)' link='makehtml_tag.php' rank='sys_MakeHtml' target='main' />
繼續(xù)找到include/taglib/tag.lib.php文件,找到(也可復(fù)制附帶文件直接覆蓋)
//$row['link'] = $cfg_cmsurl."/tags.php?/".urlencode($row['keyword'])."/"; //原DEDE代碼,屏蔽 $row['link'] = nic_tag_url($row['id']); //新加代碼,TAG靜態(tài)化
最后一步:找到include/extend.func.php文件,將附帶文件里的代碼全部復(fù)制到里面extend.func.php里面就行了
織夢tag頁面靜態(tài)化使用說明
1、進入網(wǎng)站后臺——生成——更新TAG靜態(tài)
2、生成有個選項“是否強制全部生成”,是為了節(jié)省資源設(shè)計的;
“重新生成全部TAG列表”,將會更新所有的TAG列表頁;
“僅更新上次生成有變化的TAG”,則只會更新上次更新之后有變化及新增加的TAG列表頁,這個會比較節(jié)省時間
3、生成的TAG首頁,在網(wǎng)站的根目錄tags.html文件
4、如果你的模板里,還有TAG需要指向到它的靜態(tài)地址,則用參考這個函數(shù)去處理其標簽即可:
{dede:tag type='current'} [field:id function="nic_tag_url(@me)" /] {/dede:tag}
其中的id就是這個TAG的ID號
5、調(diào)用tag標簽
在你想要調(diào)用tag的頁面加入調(diào)用代碼:new(最新),rand(隨機),getall='0' 獲取類型0為當前內(nèi)容頁TAG標記,1為獲取全部TAG標記。
{dede:tag sort='new' getall='0'}<a href='[field:link/]'>[field:tag /]</a>{/dede:tag}
在內(nèi)容頁模板,如果想指向該文TAG的列表頁,用以下標簽即可
{dede:field.id function='nic_arc_tag_link(@me)'/}
高級補充說明:
1、TAG這個目錄可以改,修改arc.taghtml.class.php的146行和extend.func.php的15行,里面的tag/字樣
2、文件名里的id號不能去掉,舉例說因為"作業(yè)"和"昨夜"的拼音都一樣,如果沒有ID,他們的文件名就重復(fù)了。
如果非要去掉ID,請按如下步驟修改: 1:修改include/arc.taghtml.class.php,去掉_".$this->Fields['id']."_".$this->PageNo." $makeFile = $this->Fields['typedir']."/".$pinyin_title."_".$this->Fields['id']."_".$this->PageNo.".html"; 2:打開include/extend.func.php,去掉 _".$tid."_1 $str = $GLOBALS['cfg_cmspath']."/tag/".$pinyin_title."_".$tid."_1.html";
3、生成速度和普通列表頁一致的,因為是從哪里修改過來的。 你有1萬個TAG,假定你每個TAG對應(yīng)有30個文章吧,列表頁10篇為一頁,那就有3萬篇了。
你可以到后臺的sql運行工具里,執(zhí)行這一句看看,就知道TAG對應(yīng)文章之后,數(shù)量就遠大于TAG數(shù)量本身:
select count(*) as c from dede_taglist
4、如果需要在發(fā)布新文章的時候,同時更新相關(guān)的TAG列表頁,可以參考附帶的inc_archives_functions.php,修改你DEDE后臺目錄dede/inc/inc_archives_functions.php
增加 741行、758~765行
注意事項:
不建議新站或內(nèi)容較少的網(wǎng)站使用TAG標簽,如果每篇文章設(shè)置的tag標簽過多,會導(dǎo)致在生成靜態(tài)頁面之后,容易造成大量內(nèi)容重復(fù)的頁面。不但對網(wǎng)站優(yōu)化沒有提升,還可能會被搜索引擎視為作弊,造成網(wǎng)站被降權(quán)等一系列不利影響。
織夢tag標簽頁面靜態(tài)化插件下載鏈接: https://pan.baidu.com/s/1l-7ZY1659QanbqAxluA_Bw 提取碼: jng9