织梦cms为{dede:tag}增加[field:global.autoindex/]标签的方法,首先打开/include/taglib/tag.lib.php文件,找到下列代码,(注意备份好原有文件,以免发生错误)
$dsql->SetQuery("SELECT * FROM `tagindex` $addsql ORDER BY $orderby LIMIT 0,$num"); $dsql->Execute(); $ctp = new DedeTagParse(); $ctp->SetNameSpace('field','[',']'); $ctp->LoadSource($InnerText); while($row = $dsql->GetArray()) { $row['keyword'] = $row['tag']; $row['tag'] = dede_htmlspecialchars($row['tag']); $row['link'] = $cfg_cmsurl."/tags.php?/".urlencode($row['keyword'])."/"; $row['highlight'] = 0; if($row['monthcc']>1000 || $row['weekcc']>300 ) { $row['highlight'] = mt_rand(3,4); } else if($row['count']>3000) { $row['highlight'] = mt_rand(5,6); } else { $row['highlight'] = mt_rand(1,2); } foreach($ctp->CTags as $tagid=>$ctag) { if(isset($row[$ctag->GetName()])) { $ctp->Assign($tagid,$row[$ctag->GetName()]); } } $revalue .= $ctp->GetResult(); }将以上代码修改为
$dsql->SetQuery("SELECT * FROM `tagindex` $addsql ORDER BY $orderby LIMIT 0,$num"); $dsql->Execute(); $GLOBALS['autoindex'] = 0; $ctp = new DedeTagParse(); $ctp->SetNameSpace('field','[',']'); $ctp->LoadSource($InnerText); while($row = $dsql->GetArray()) { $row['keyword'] = $row['tag']; $row['tag'] = dede_htmlspecialchars($row['tag']); $row['link'] = $cfg_cmsurl."/tags.php?/".urlencode($row['keyword'])."/"; $row['highlight'] = 0; if($row['monthcc']>1000 || $row['weekcc']>300 ) { $row['highlight'] = mt_rand(3,4); } else if($row['count']>3000) { $row['highlight'] = mt_rand(5,6); } else { $row['highlight'] = mt_rand(1,2); } foreach($ctp->CTags as $tagid=>$ctag) { if(isset($row[$ctag->GetName()])) { $ctp->Assign($tagid,$row[$ctag->GetName()]); } } $revalue .= $ctp->GetResult(); $GLOBALS['autoindex']++; }这样就可以实现了
实现后的效果如下: