解決問題:dedecms織夢內鏈教程:如何給文章自動添加關鍵詞內鏈錨文本
網站關鍵詞內鏈,是做好網站內部優化的一個重要環節,織夢(DedeCMS)官方默認規則是:
1.添加關鍵詞和關鍵詞的鏈接地址
設置步驟:進入后臺 核心->批量維護->文檔關鍵詞維護
2.文章內容出現該關鍵詞
3.文章的關鍵詞出現這個詞(就是這里 ) //這個是在發布文章的時候填寫的
第三條規則使得關鍵詞內鏈不盡完美,所以得修改文件取消掉第三條規則,達到我們想要的效果,即文章內出現該關鍵詞即鏈向指定的URL,在Dedecms5.5,5.6下測試有效。
一、開打include/arc.archives.class.php 文件
二、查找 function ReplaceKeyword($kw,&$body)
三、往下找到下面這段代碼,刪除或注釋掉(www.genban.org 網站建設)
-
foreach($kwsas$k){$k=trim($k);
-
if($k!=""){if($i>$maxkey){break;}
-
$myrow=$this->dsql->GetOne("select*frommeiwen_keywordswherekeyword='$k'Andrpurl<>''");
-
if(is_array($myrow))
-
{
-
$karr[]=$k;
-
$GLOBALS['replaced'][$k]=0;
-
$kaarr[]="<spanstyle="text-decoration:underline;">$k</span>";
-
}
-
$i++;}}
四、并在注釋或刪除的代碼下面加入以下代碼:
-
$dsql=newDedeSql(false);
-
$query="select*frommeiwen_keywordswhererpurl<>''";
-
$dsql->SetQuery($query);$dsql->Execute();
-
while($row=$dsql->GetArray())
-
{$key=trim($row['keyword']);
-
$rul=trim($row['rpurl']);
-
if($rul!="")if(!in_array($key,$kw))if(!in_array($kw,$key))if(substr_count($body,$key)<20){$karr[]=$key;$kaarr[]="$key";}}
五、OK,已經修改完成了。直接復制上面代碼,文章內同樣的關鍵詞只會出現一個鏈接。
六、一鍵更新網站->更新所有