云主机测评网云主机测评网云主机测评网

云主机测评网
www.yunzhuji.net

如何使用织梦dedecms根据栏目调用tag标签?

在织梦dedecms中,按栏目调用tag标签的方法如下:,,1. 打开模板文件,index.htm。,2. 在需要显示tag标签的位置插入以下代码:,,“php,{dede:field name='positionid' id='1'/},{dede:sql sql='SELECT tid,tag FROM #@__tag WHERE typeid=1 AND status=1'},[field:tid function="GetTag('',@me)"/],{/dede:sql},“,,3. 保存模板文件并更新缓存。

织梦dedecms按栏目调用tag标签的方法

修改系统文件

1、打开include/taglib/目录下的 tag.lib.php 文件:找到以下代码段,并在适当位置插入标注部分代码。


01 if($getall==0 && isset($refObj>Fields['tags']) && !empty($refObj>Fields['aid'])) {
02 $dsql>SetQuery("Select tid Fromddmx_taglist where aid = '{$refObj>Fields['aid']}' ");
03 $dsql>Execute();
04 $ids = '';
05 while($row = $dsql>GetArray()) {
06 $ids .= ( $ids=='' ? $row['tid'] : ','.$row['tid'] );
07 }
08 if($ids != '') {
09 $addsql = " where id in($ids) ";
10 }
11 if($addsql=='') return '';
12 } else if($getall==2) {
13 $addsql = " where typeid='{$refObj>Fields['typeid']}' ";
14 } else {
15 if(!empty($typeid)) {
16 $addsql = " where typeid='$typeid' ";
17 }

修改模板文件

在模板文件中使用以下代码来调用当前栏目的TAG标签:

{dede:tag sort='hot' getall='2'}
<a href='[field:link/]'>[field:tag /]</a>
{/dede:tag}

参数说明

row=’30’:调用条数为30条。

sort=’new’:排序方式,可选值有month(月)、rand(随机)、week(周)。

getall=’2′:获取类型,0为当前内容页TAG标记,1为获取全部TAG标记,2为获取当前栏目的TAG标记。

常见问题与解答

1、问题1:如何确保调用的TAG标签是当前栏目的?

解答1:通过设置getall='2'可以确保只获取当前栏目的TAG标签,如果需要进一步精确控制,可以在SQL查询语句中添加条件限制。

2、问题2:如何在首页和列表页分别调用不同的TAG标签?

解答2:在首页可以使用getall='0'来获取当前内容页的TAG标签,而在列表页则可以使用getall='2'来获取当前栏目的TAG标签,具体实现可以参考上述代码示例。

打赏
版权声明:主机测评不销售、不代购、不提供任何支持,仅分享信息/测评(有时效性),自行辨别,请遵纪守法文明上网。
文章名称:《如何使用织梦dedecms根据栏目调用tag标签?》
文章链接:https://www.yunzhuji.net/internet/226658.html

评论

  • 验证码