织梦dede:tag调用指定多个栏目的TAG标签

网站建设 2022-07-27 08:12www.1681989.com免费网站
官方dede:tag默认只能调用指定的1个栏目的,无法指定多个栏目 例如,我要调用指定的1,2,3这个几个栏目和子栏目的TAG标签出来 {dede:tag row=30 sort=new getall=1 typeid=1,2,3 }a href=[field:lk/][field:tag/]/a{/dede:tag} 解决方法 打开 /clude/taglib/tag.lib.php 找到 ,大概在67行左右 $ addsql = WHERE typeid= $typeid ; 改成 //指定了 […]



官方dede:tag默认只能调用指定的1个栏目的,无法指定多个栏目

例如,我要调用指定的1,2,3这个几个栏目和子栏目的TAG标签出来

{dede:tag row='30' sort='new' getall='1' typeid='1,2,3'}<a href="[field:lk/]">[field:tag/]</a>{/dede:tag}

解决方法

打开 /clude/taglib/tag.lib.php 找到 ,大概在67行左右

$addsql = " WHERE typeid='$typeid' ";

改成

//指定了多个栏目时
if( preg_match('#,#', $typeid) )
{
	$typeids = explode(',', $typeid);
	foreach($typeids as $ttid) {
		$typeidss[] = GetSonIds($ttid);
	}
	$typeidStr = jo(',', $typeidss);
	$typeidss = explode(',', $typeidStr);
	$typeidssok = array_unique($typeidss);
	$typeid = jo(',', $typeidssok);
	$addsql = " WHERE typeid IN ($typeid) ";
}
else
{
	$addsql = " WHERE typeid IN (".GetSonIds($typeid).") ";
}

如图


Copyright © 2016-2025 www.1681989.com 推火网 版权所有 Power by