如何在DedeCMS中利用getall方法获取当前页面的Tag标签(超链接)?

如何在DedeCMS中利用getall方法获取当前页面的Tag标签(超链接)?
在Dedecms中,使用getall函数获取当前页面的tag标签(超链接)的方法如下:,,“php,$tags = getall("SELECT * FROM dede_tag WHERE aid={$aid}");,foreach ($tags as $tag) {, echo '' . $tag['tag'] . '';,},`,,$aid是当前文章的ID。这段代码会查询数据库中的dede_tag`表,获取与当前文章相关的所有标签,并输出为超链接的形式。

DedeCMS(织梦内容管理系统)中,使用getall获取当前页面的tag标签并生成超链接的方法如下:

基本语法

{dede:tag row='30' sort='new' getall='0'}
    <a href='[field:link/]'>[field:tag /]</a>
{/dede:tag}

参数说明

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

sort='new':排序方式,可以是month(按月)、rand(随机)、week(按周)。

getall='0':获取类型,0表示只获取当前内容页的TAG标记,1表示获取全部TAG标记。

示例代码

1. 首页、列表页和文章页调用带超链接的TAG标签

{dede:tag row='30' sort='new' getall='0'}
    <a href='[field:link/]'>[field:tag /]</a>
{/dede:tag}

2. 最新TAG标签调用

{dede:tag row='30' sort='new'}
    <a href='[field:link/]'>[field:highlight/]([field:result/])</a>
{/dede:tag}

3. 当月热门TAG标签调用

{dede:tag row='30' sort='month'}
    <a href='[field:link/]'>[field:tagname/]([field:result/])</a>
{/dede:tag}

4. 随机TAG标签调用

{dede:tag row='60' sort='rand'}
    <a href='[field:link/]'>[field:highlight/]([field:result/])</a>
{/dede:tag}

5. 采集热门Tags,刷新一次变换一次

模板代码:

{dede:tag row='10' sort='month' }
    <a class="tag" href='[field:link/]'>[field:tagname/] </a>
{/dede:tag}
<script language="javascript">
<!
var tag_a=document.getElementsByTagName("a");
for( i in tag_a){
    var offset=6;
    var num=4;
    if(tag_a[i].className=="tag"){
        var rnd=Math.ceil((num+offset)*Math.random());
        if(rnd>offset){
            tag_a[i].className="tag"+(rndoffset);
        }
    }
}
//>
</script>
CSS代码:
.tag1 { color:#339900;fontweight:bold;}
.tag2 { color:#e65730;}
.tag3 { color:#00b9da;}
.tag4 { color:#FE3981;fontweight:bold;fontsize:14px;}

FAQs

问题1:如何在文章页调用TAG标签?

:在文章页调用TAG标签可以使用以下代码:

{dede:tag table='dede_search_keywords' sort='keyword' row='2' if=''}
    <a class="blue" href='[field:link/]' target=_blank>[field:tag /]</a>
{/dede:tag}
或
{dede:field name='keywords' runphp='yes' }
if(!empty(@me)){
    $kws = explode(' ',@me);
    @me = "";
    foreach($kws as $k){
        @me .= "<a href='/tag.php?/$k/'>$k</a> ";
    }
    @me= str_replace('+', ' ',trim(@me));
}
{/dede:field}

问题2:如何在列表页调用TAG标签?

:在列表页调用TAG标签可以通过以下两种方法实现:

dedecms5.7版本:找到includehelpersarchive.helper.php文件,并在底部增加:


function GetTags_list($aid)
{
    global $dsql;
    $tags = '';
    $query = "SELECT tag FROMma_taglist WHERE aid='$aid' ";
    $dsql>Execute('tag',$query);
    while($row = $dsql>GetArray('tag'))
    {
        $tags .= ($tags=='' ? "<a href='/tags.php?/".urlencode($row['tag'])."'>".$row['tag']."</a>" : ','."<a href='/tags.php?/".urlencode($row['tag'])."'>".$row['tag']."</a>");
    }
    return $tags;
}

然后在列表需要调用tag标签的位置添加:

[field:id function=GetTags_list(@me)/]

dedecms5.6版本:直接在模板需要的位置加入以下代码即可:

[field:id runphp=yes]
$tsql = new DedeSql(false);
$tags = ”;
$tsql>SetQuery(“Select i.tag From dede_taglist t left join dede_tagindex i on i.id=t.tid where t.aid=’@me’”);
$tsql>Execute(‘t’);
while($row = $tsql>GetArray(‘t’,MYSQL_ASSOC)){
    $tags .= “<a href=’/tag.php?/”.urlencode($row['tag']).”‘>”.$row['tag'].”</a>”;
}
@me=$tags;
[/field:id]

<?php
// 步骤2: 引入DedeCMS的核心文件
require_once dirname(__FILE__).'/include/common.inc.php';
// 步骤3: 获取当前页面的内容模型ID
$channelid = $dsql>GetOne("SELECT channelid FROM#@__archives WHERE aid={$_GET['aid']}");
// 步骤4: 根据内容模型ID获取当前页面的tag标签
$tags = $dsql>GetOne("SELECT tag FROM#@__channeltype WHERE id=$channelid");
// 步骤5: 将获取到的tag标签输出
if ($tags) {
    echo "当前页面的标签为:$tags";
} else {
    echo "当前页面没有标签信息。";
}
?>
步骤 代码/描述
1 确保你的DedeCMS网站已正确安装并配置。
2 在页面的PHP文件中,引入DedeCMS的核心文件。
3 获取当前页面的内容模型ID。
4 根据内容模型ID获取当前页面的tag标签。
5 将获取到的tag标签输出或处理。

上述代码中使用了$_GET['aid']来获取当前页面的文章ID,你需要根据实际情况调整这部分代码,确保你的数据库表名与代码中的表名一致,或者根据实际情况修改表名。

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

本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。

(0)
未希新媒体运营
上一篇 2024-10-18 06:25
下一篇 2024-10-18 06:33

相关推荐

  • ASP中如何创建超链接?

    在 ASP 中,你可以使用 HTML 的 ` 标签来创建超链接。,,`asp,访问示例网站,“,,这段代码会生成一个指向 “https://www.example.com” 的超链接,显示文本为 “访问示例网站”。

    2024-11-30
    064
  • ASP中如何创建超链接?

    在ASP中创建超链接,可以使用HTML的`标签,并通过服务器端脚本动态生成URL。,,`asp,,,“,,这段代码将在网页上显示一个指向”http://www.example.com”的超链接,显示文本为”Visit Example”。

    2024-11-29
    013
  • 如何使用DedeCMS创建并管理我的网站?

    您的网站使用DedeCMS(织梦内容管理系统)构建,这是一个流行的开源PHP网站管理平台,适用于创建和管理动态网站。如果您需要进一步的帮助,请提供更多详细信息。

    2024-11-20
    024
  • DEDECMS中的时间显示如何设置为多少分钟前?

    您的问题似乎不完整,请提供更详细的信息或上下文,以便我能更准确地回答您。如果您是在询问dedecms(一个内容管理系统)的安装、配置、使用或其他相关问题,请具体说明需要了解的内容,我会很乐意为您提供帮助。

    2024-11-08
    044

发表回复

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

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