DedeCMS修改likearticle標簽在tag列表關聯錯誤[織夢網站模板使用教程]

閱讀 ?·? 發布日期 2019-05-28 07:01 ?·? admin

DedeCMS修改likearticle標簽在tag列表關聯錯誤[織夢網站模板使用教程]DedeCMS相關內容一般用likearticle標簽,官方說法是只能用于文章頁,該標簽默認以keywords關鍵字來關聯文章改成以tag來關聯,并且加了一個判斷,在執行以tag的模糊查詢之后,如果查詢的數據為空的話,就直接再直接再次查詢本欄目下所有推薦的文章。目的是好的,保持著一直有返回值而不至于為輸出空列表。

        考慮到有的文章沒有tag,標簽先判斷文章是否有tag,如果沒有就直接查詢本欄目下推薦文章,如果有tag標簽卻查詢到為空的文章那么也返回當前欄目下的推薦文章。

        在追求提高頁面內容、鏈接關聯度上有時需要控制好調用內容達到優化的目的,這樣做SEO優化的時候只需要控制好文章的keywords就能讓文章之間內容達到高度匹配!

likearticle標簽全站調用文章

        先看基本用法格式如下

{dede:likearticle row='' col='' titlelen='' infolen=''} 
<a href='[field:arcurl/]'>[field:title/]</a> 
{/dede:likearticle} 

參數說明: 
col='' 分多少列顯示(默認為單列) 
row='10' 返回文檔列表總數 
titlelen = '30' 標題長度 等同于titlelength 
infolen = '160' 表示內容簡介長度 等同于infolength 
mytypeid = 0  手工指定要限定的欄目id,用,分開表示多個 
innertext = '' 單條記錄樣式(指標簽中間的內容) 

        網上有修改為全站調用文章,打開/include/taglib/likearticle.lib.php,找到

$typeid = " AND arc.typeid IN($typeid) AND arc.id<>$arcid ";

        修改為:

$typeid = " AND arc.id<>$arcid ";

        但個人并不推薦這樣做,有些隱藏或不參與排名的文章也會被調用出來,如何沒編輯robots.txt,抓取了就不好了。

        所以一般手動增加需要調用的欄目ID,如:mytypeid='1,2,3'。

taglist標簽列表與likearticle標簽調用問題處理

        建站項目中想減少模板數量,采用文章內容頁模板、默認文章列表模板、特定標簽內容列表模板公用一個左側模板,左側模板用likearticle標簽調用文章相關內容,但發現該標簽會在taglist列表調用制定ID欄目的推薦內容,這種毫無匹配度的調用會降低內容及鏈接相關度,一定要取消,打開/include/taglib/likearticle.lib.php,找到

else
{
    if(!empty($typeid)) {
    typeid = " arc.typeid IN($typeid) AND arc.id<>$arcid ";
}
$query = "SELECT arc.*,tp.typedir,tp.typename,tp.corank,tp.isdefault,tp.defaultname,tp.namerule,
tp.namerule2,tp.ispart,tp.moresite,tp.siteurl,tp.sitepath
FROM `dede_archives` arc LEFT JOIN `dede_arctype` tp ON arc.typeid=tp.id
WHERE arc.arcrank>-1 AND  $typeid $orderquery limit 0, $row";
}

        注釋以上else整段即可。