1 添加2个自定义函数
在织梦/include/extend.func.php底部 添加以下代码:
//根据文章ID 获取文章的标签 然后根据标签随机获取不是本地址的文章地址
function gettaglink($aid)
{
global $lit_imglist,$dsql;
//思路整理 先根据文章ID 找标签ID 然后根据标签ID 找到不包括自己的文章ID 然后随机获取一个文章ID
$dsql->SetQuery("SELECT tid FROM `dede_taglist` WHERE aid = '{$aid}' ");
$dsql->Execute();
$ids = '';
while($row = $dsql->GetArray())
{
$ids .= ( $ids=='' ? $row['tid'] : ','.$row['tid'] );
}
if($ids != '')
{
$addsql = " WHERE tid IN($ids) and aid!=".$aid;
}
$dsql->SetQuery("SELECT aid FROM `dede_taglist` {$addsql} ");
$dsql->Execute();
$ads = array();
while($row = $dsql->GetArray())
{
$ads[]=$row['aid'];
}
//去重
$ads=array_unique($ads);
//随机获取一个
$rand=array_rand($ads);
//文章ID
$realaid=$ads[$rand];
$artinfo=GetOneArchive($realaid);
//文章链接
return $artinfo['arcurl'];
}
function gettagandlink($aid)
{
global $lit_imglist,$dsql;
//思路整理 先根据文章ID 找标签ID 然后根据标签ID 找到不包括自己的文章ID 然后随机获取一个文章ID
$dsql->SetQuery("SELECT tid FROM `dede_taglist` WHERE aid = '{$aid}' ");
$dsql->Execute();
$ids = '';
while($row = $dsql->GetArray())
{
$ids .= ( $ids=='' ? $row['tid'] : ','.$row['tid'] );
}
if($ids != '')
{
$addsql = " WHERE id IN($ids)";
}
$dsql->SetQuery("SELECT * FROM `dede_tagindex` $addsql LIMIT 0,3");
$dsql->Execute();
$res='';
while($row = $dsql->GetArray())
{
$tmp[]['tag'] = dede_htmlspecialchars($row['tag']);
}
foreach($tmp as $k=>&$v) {
$link=gettaglink($aid);
if($link) {
$res .="<a href='".$link."' target=_blank>".$v['tag']."</a>,";
}
}
return $res;
} 
2 在织梦文章详情模板/templates/default/article_article.htm 的 {dede:field.body/} 替换为以下代码即可实现织梦文章页的tag标签随机插入到内容中并且标签的链接为其tag标签关联的其他文章链接。
织梦二次开发QQ群
本站客服QQ号:862782808(点击左边QQ号交流),群号(383578617)
如果您有任何织梦问题,请把问题发到群里,阁主将为您写解决教程!
转载请注明: 织梦模板 » 织梦文章页的tag标签随机插入到内容中并且标签的链接为其tag标签关联的其他文章链接






























