如何使用织梦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标签的方法

如何使用织梦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(周)。

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

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

常见问题与解答

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

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

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

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

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

原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1114265.html

(0)
未希的头像未希新媒体运营
上一篇 2024-10-01 07:00
下一篇 2024-10-01 07:01

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

免费注册
电话联系

400-880-8834

产品咨询
产品咨询
分享本页
返回顶部
云产品限时秒杀。精选云产品高防服务器,20M大带宽限量抢购  >>点击进入