{dede:tags type='top'/}
标签来调用全局Tags。,,2. 列表页:在列表页模板文件中,可以使用{dede:tags type='list'/}
标签来调用全局Tags。,,3. 文章页:在文章页模板文件中,可以使用{dede:tags type='arc'/}
标签来调用全局Tags。,,注意:在使用这些标签之前,请确保已经在后台开启了全局Tags功能。管理系统(DedeCMS)中,标签(TAG)的调用是实现网站内容优化和用户体验提升的重要手段,通过合理设置和使用标签,可以更好地组织网站内容,方便用户快速找到所需信息,同时也利于搜索引擎的抓取和索引,下面将详细介绍如何在DedeCMS系统的首页、列表页和文章页进行全局标签调用的方法。
首页、列表页和文章页调用所有的标签
1、语法:
```php
{dede:tag row='8' getall='1' sort='month'}
```
2、参数说明:
row
:表示调用的条数,这里设置为8条。
getall
:获取类型,0为当前内容页标签标记,1为获取全部标签标记。
sort
:排序方式,这里选择按月份排序。
3、示例:
```php
{dede:tag row='8' getall='1' sort='month'}
<a href='[field:link/]'>[field:tag /]</a>
{/dede:tag}
```
列表页调用每一篇文章的标签
1、方法一:
代码:
```php
[field:id runphp=yes]
$tsql = new DedeSql(false);
$tags = '';
$tsql>SetQuery("Select i.tag From tf_taglist t left join tf_tagindex i on i.id=t.tid where t.aid='@me'");
$tsql>Execute('t');
while($row = $tsql>GetArray('t',MYSQL_ASSOC)){
$tags .= "<a href='/tags.php?/".urlencode($row['tag'])."'>".$row['tag']."</a>";
}
@me=$tags;
[/field:id]
```
2、方法二:
步骤:
打开include/helpers/archive.helper.php
文件。
在底部增加如下函数:
```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='/tag.php?/".urlencode($row['tag'])."'>".$row['tag']."</a>" : ','."<a href='/tag.php?/".urlencode($row['tag'])."'>".$row['tag']."</a>");
}
return $tags;
}
```
在模板需要的位置添加如下代码:
```php
[field:id function=GetTags_list(@me)/]
```
1、默认无链接调用:
```php
{dede:field.tags/}
```
2、带链接调用:
修改步骤:
打开include/common.func.php
文件。
大约在755行处找到如下代码:
```php
//获得某文档的所有标签
function GetTags($aid) {
global $dsql;
$tags = '';
$query = "Select tag Fromtf_taglist
where aid='$aid' ";
$dsql>Execute('tag',$query);
while($row = $dsql>GetArray('tag')) {
$tags .= ($tags=='' ? $row['tag'] : ','.$row['tag']);
}
return $tags;
}
```
将其修改为:
```php
//获得某文档的所有标签
function GetTags($aid) {
global $dsql;
$tags = '';
$query = "Select tag Fromdede_taglist
where aid='$aid' ";
$dsql>Execute('tag',$query);
while($row = $dsql>GetArray('tag')) {
$tags .= ($tags=='' ? "<a href=/tags.php?/{$row['tag']} target=_blank>{$row['tag']}</a>" : ','."<a href=/tags.php?/{$row['tag']} target=_blank>{$row['tag']}</a>");
}
return $tags;
}
```
相关问答FAQs
问题1:如何在DedeCMS中实现首页、列表页和文章页的全局标签调用?
答:在DedeCMS中,可以通过以下几种方法实现首页、列表页和文章页的全局标签调用:
1、首页、列表页和文章页调用所有标签:使用{dede:tag row='8' getall='1' sort='month'}
语法,其中row
表示调用的条数,getall
表示获取类型,sort
表示排序方式。
2、列表页调用每篇文章的标签:可以在模板中使用[field:id runphp=yes]
标签结合自定义函数GetTags_list
来实现。
3、文章页调用该篇正文的标签:默认情况下,可以使用{dede:field.tags/}
来调用不带链接的标签,如果需要带链接,则需修改include/common.func.php
文件中的GetTags
函数。
问题2:如何修改DedeCMS中的标签函数以实现带链接的标签调用?
答:要实现带链接的标签调用,可以按照以下步骤操作:
1、打开include/common.func.php
文件。
2、在大约755行处找到GetTags
函数,该函数用于获取某文档的所有标签。
3、将该函数中的标签输出部分修改为带链接的形式,如:
```php
$tags .= ($tags=='' ? "<a href=/tags.php?/{$row['tag']} target=_blank>{$row['tag']}</a>" : ','."<a href=/tags.php?/{$row['tag']} target=_blank>{$row['tag']}</a>");
```
4、保存文件并刷新页面,即可看到标签已经带上了链接。
DedeCMS 首页、列表页和文章页的全局Tags调用
1. 首页全局Tags调用
在DedeCMS中,首页的全局Tags调用主要用于展示网站的最新动态、热门内容等,以下是一些常见的全局Tags调用示例:
1.1 最新文章
<?php sp_get_tag('archives', array( 'row' => 10, // 显示文章数量 'orderway' => 'desc', // 排序方式 'day' => 30, // 时间范围 'limit' => 5, // 限制显示数量 )); ?>
1.2 热门文章
<?php sp_get_tag('archives', array( 'row' => 10, 'orderway' => 'desc', 'flag' => 'hot', // 标记为热门 'limit' => 5, )); ?>
1.3 最新评论
<?php sp_get_tag('comments', array( 'row' => 10, 'orderway' => 'desc', 'limit' => 5, )); ?>
2. 列表页全局Tags调用
列表页的全局Tags调用通常用于展示某个分类或模型下的文章列表,以下是一些示例:
2.1 分类列表
<?php sp_sql_category('category', array( 'limit' => 10, // 显示分类数量 )); ?>
2.2 文章列表
<?php sp_sqlArchives('archives', array( 'channelid' => 1, // 指定模型ID 'orderby' => 'id', // 排序方式 'listrow' => 10, // 每页显示文章数量 'limit' => 5, // 限制显示数量 )); ?>
3. 文章页全局Tags调用
文章页的全局Tags调用用于展示与当前文章相关的内容,如推荐文章、同分类文章等。
3.1 推荐文章
<?php sp_get_tag('archives', array( 'row' => 5, 'orderway' => 'desc', 'flag' => 'recommend', // 标记为推荐 )); ?>
3.2 同分类文章
<?php sp_sqlArchives('archives', array( 'channelid' => 1, // 指定模型ID 'typeid' => $typeid, // 当前文章的分类ID 'orderby' => 'id', 'listrow' => 5, )); ?>
注意事项
在调用全局Tags时,请确保已经正确设置了模型和分类。
根据需要调整参数,如显示数量、排序方式等。
在调用Tags时,注意权限和SEO优化。