我們在前面曾經介紹過《通過Tag及Keyword標簽獲取相關文章》的實現方法,很多朋友反響比較好,同時也咨詢武林網,是否可以通過tag標簽單獨輸出相關文章而且需要支持自定義字段呢?回答是肯定的。

但是我們在實現通過tag標簽單獨輸出相關文章而且需要支持自定義字段之前,我們首先需要的是讓tag標簽支持自增函數autoindex,這個我們需要先提前做下開發(fā),具體的方法可以參看《織夢dede:tag標簽實現autoindex自增功能方法》。做好這個準備之后我們就可以開始了。
下面代碼運行后就是上圖效果
<div class="guess"><h3>猜你喜歡</h3><ol class="clearfix">{dede:tag row='4' sort='new' getall='0'} <li [field:array runphp=yes]($GLOBALS[autoindex]==1) ? @me="class='on'":@me="";[/field:array]>[field:tag /]</li>{/dede:tag}</ol>{dede:tag row='4' sort='new' getall='0'}<ul class="clearfix" [field:array runphp=yes]($GLOBALS[autoindex]==1) ? @me="style='display: block'":@me="style='display:none'";[/field:array]><li class='first'><a class='pic' href='[field:global.cfg_basehost/][field:id function='mbp_tag_url(@me)'/]'><img src='[field:global.cfg_basehost/][field:id function='mbp_tag_img(@me)'/]' alt='[field:tag /]'></a><h5><a href='[field:global.cfg_basehost/][field:id function='mbp_tag_url(@me)'/]' title='[field:tag /]'>[field:tag /]</a></h5><p>[field:id function='mbp_tag_description(@me)'/]</p></li>[field:tag runphp=yes]global $dsql,$id,$aid;$myid = isset($id) ? $id : $aid;$taga = @me;$arow = $dsql->GetOne("Select * From `dede_tagindex` where tag like '$taga'");$tid = $arow['id'];if($tid!=''){$tagsql = "Select aid From `dede_taglist` where tid = $tid And arcrank > -1 group by aid order by aid desc";$dsql->SetQuery($tagsql);$dsql->Execute('t');$result = '';while($arow = $dsql->GetArray('t')){$ids[] = $arow['aid'];}}if(count($ids) > 0){$idsStr = join(',', $ids); $query = "Select arc.*,addf.*,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 left join dede_addonarticle addf on arc.id = addf.aidwhere arc.arcrank>-1 and arc.id in($idsStr) And arc.id<>$myid order by arc.id desc limit 9";//輸入多少個文章}$dsql->SetQuery($query);$dsql->Execute('t');$result = '';$totalRow = $dsql->GetTotalRow();while($row = $dsql->GetArray('t')){global $cfg_basehost;$arcurl = GetOneArchive($row['id']);$result .= "<li><a class='pic' href='$cfg_basehost{$arcurl['arcurl']}'><img src='$cfg_basehost{$row['litpic']}' alt='{$row['title']}'></a><h5><a href='$cfg_basehost{$arcurl['arcurl']}' title='{$row['title']}'>{$row['title']}</a></h5><p>作者:{$row['zuozhe']}</p><p><em>{$row['typename']}</em></p></li>";}if($result=='') $result = "<p style='color:#f00;'>該TAG標簽沒有相關文章</p>";@me = $result;[/field:tag]</ul>{/dede:tag}</div>這里武林網需要做個小說明,[field:id function='mbp_tag_description(@me)'/] 這些tagindex表里自定義字段的調用可以參考《織夢extend.func.php函數擴展實現任意地方調用任意模型的自定義字段》一文的說明。
以上就是織夢模板開發(fā):tag標簽單獨輸出相關文章(支持自定義字段)的全部內容,希望對大家的學習和解決疑問有所幫助,也希望大家多多支持武林網。新聞熱點
疑難解答