如何在DedeCMS中同时在列表页和详情页调用并链接Tag标签?

DedeCMS中,列表页详情页调用tag标签并带上链接的方法如下:,,1. 在列表页模板中,使用以下代码调用带有链接的tag标签:,,“html,{dede:field name='diyname'/},`,,2. 在详情页模板中,使用以下代码调用带有链接的tag标签:,,`html,{dede:field name='typename'/},`,,请将diynametypename`替换为您的实际字段名称。

在织梦CMS(DedeCMS)中,列表页和详情页调用TAG标签并带上链接的方法有多种,以下是两种常见的方法:

方法一:直接在模板中加PHP代码

1、打开模板文件:以默认模板为例,打开/templets/default/list_article.htm文件。

2、找到相应位置:在文件中找到如下代码:

   <small>好评:</small>[field:scores/]

3、添加代码:在上述代码后面加上以下PHP代码:

   <small>标签:</small>
   [field:id runphp='yes']
   global $cfg_cmspath;
   $tags = GetTags(@me);
   $revalue = '';
   $tags = explode(',', $tags);
   foreach($tags as $key => $value){
   if($value){
   $revalue .= '<a href="'.$cfg_cmspath.'/tags.php?/'.$value.'/">'.$value.'</a> ';
   }
   }
   @me = $revalue;
   [/field:id]

4、保存文件:保存修改后的模板文件即可。

方法二:使用自定义函数

1、复制tags.php文件:将网站根目录的tags.php文件复制到m文件夹中,并修改里面的路径和模板,找到require_once (dirname(__FILE__) . "/include/common.inc.php");这行代码,将其改为define('DEDEMOB', 'Y'); require_once (dirname(__FILE__) . "/../include/common.inc.php");

2、编写自定义函数:在include/extend.func.php文件的最下面加入以下代码:

   function listtag($aid) {
   $tsql = new DedeSql(false);
   $tags = '';
   $tsql>SetQuery("Select i.tagname From dede_taglist As t Left Join dede_archivestag As at On t.id = at.tagid Where at.aid = $aid");
   $tsql>Execute();
   while($row = $tsql>GetArray()) {
   if ($tags == '') {
   $tags = '<a href="/tags.php?/'.urlencode($row['tagname']).'/">'.$row['tagname'].'</a>';
   } else {
   $tags .= ', <a href="/tags.php?/'.urlencode($row['tagname']).'/">'.$row['tagname'].'</a>';
   }
   }
   return $tags;
   }

3、调用自定义函数:在需要显示标签的地方调用listtag($aid)函数,其中$aid为当前文章的ID。

如何在DedeCMS中同时在列表页和详情页调用并链接Tag标签?

相关问答FAQs

Q1:如何在DedeCMS中实现TAG标签静态化?

A1:实现TAG标签静态化可以通过修改系统设置和模板文件来实现,确保你的站点已经开启了静态化功能,在模板文件中使用静态化的标签调用方式,例如{dede:tag row='30' sort='new' getall='0'},这样可以避免每次访问时都动态生成标签内容,提高网站的加载速度。

Q2:如何在DedeCMS中调用当前栏目的TAG标签?

A2:要调用当前栏目的TAG标签,可以使用以下方法:

1、打开include/taglib/taglib_channelunit.lib.php文件;

2、找到GetTagList函数,并在其中添加判断条件来筛选出当前栏目的TAG标签;

3、保存文件后,在模板中使用{dede:field name='positionname'/}标签来调用当前栏目的TAG标签。

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

(0)
未希的头像未希新媒体运营
上一篇 2024-10-20 07:18
下一篇 2024-09-25 12:26

相关推荐

  • 如何在DedeCMS中删除系统自定义变量?

    在DedeCMS中,删除系统自定义变量的方法是:进入后台管理界面,依次点击“系统” ˃ “系统设置” ˃ “系统参数”,找到需要删除的自定义变量,将其值清空并保存即可。

    2024-10-08
    07
  • 如何获取DEDE顶级栏目名称的秘诀?

    DEDE获得顶级栏目名称的方法是使用TypeId属性。

    2024-10-10
    04
  • 为什么dedecms导航栏首页的currentstyle参数会失效,导致无法高亮显示?

    可以尝试在首页模板文件中添加CSS样式,手动设置导航栏首页的高亮样式。

    2024-10-10
    03
  • 如何在DEDECMS首页使用JavaScript动态显示留言本内容?

    要在DEDECMS首页用JS调用留言本内容,可以通过AJAX请求获取留言数据,然后使用JavaScript将数据显示在页面上。具体步骤如下:,,1. 在DEDECMS后台创建一个自定义标记,用于输出留言本内容。创建一个名为guestbook的自定义标记。,,2. 在模板文件中,引入jQuery库(如果还没有引入的话),并编写一个JavaScript函数,通过AJAX请求获取留言数据,并将其显示在页面上。示例代码如下:,,“html,,,$(document).ready(function() {, $.ajax({, url: ‘/plus/guestbook.php?a=list&callback=?’,, dataType: ‘jsonp’,, success: function(data) {, var html = ”;, for (var i = 0; i˂ data.length; i++) {, html += ” + data[i].username + ‘:’ + data[i].content + ”;, }, $(‘#guestbook’).html(html);, }, });,});,,`,,3. 在HTML中添加一个元素,用于显示留言本内容。,,`html,,`,,这样,当页面加载完成后,JavaScript会自动请求留言本数据,并将其显示在#guestbook`元素中。

    2024-09-30
    0126

发表回复

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

免费注册
电话联系

400-880-8834

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