DEDE显示tags标签并给标签加上链接
来源:互联网 发布:核武 知乎 编辑:程序博客网 时间:2024/05/17 07:09
Dedecms5.5,在 /include/common.func.php 中有GetTags函数:
function GetTags($aid)
{
global $dsql;
$tags = '';
$query = "Select tag From `#@__taglist` where aid='$aid' ";
$dsql->Execute('tag',$query);
while($row = $dsql->GetArray('tag'))
{
$tags .= ($tags=='' ? $row['tag'] : ','.$row['tag']);
}
return $tags;
}
该函数,使用{dede:field.tags/}可输出tags标签文字,但没有链接。如果修改红字部分,给这些标签加上链接,文章页显示正常了,但后台编辑文章时tags表单中就会出现链接内容,诸如:<a href='/tags.php?/关键词1' target='_blank'>关键词1</a> <a href='/tags.php?/关键词2' target='_blank'>关键词2</a> ... 等等。
为了不和后台编辑表单冲突,其实可单独定义一个函数,和GetTags函数类似,只是多出了链接部分。实现的效果
这里,函数名称定为Tagslink,使用{dede:field.tagsurl/}调用输出。
首先,在 /include/common.func.php 中定义如下函数(注意红字部分和GetTags函数的区别):
function Tagslink($aid)
{
global $dsql;
$tagsurl = '';
$query = "Select tag From `#@__taglist` where aid='$aid' ";
$dsql->Execute('tag',$query);
while($row = $dsql->GetArray('tag'))
{
$tagsurl .= ($tagsurl=='' ? "<a href='/tags.php?/".urlencode($row['tag'])."/' title='{$row['tag']}' target='_blank'>{$row['tag']}</a>" : ' '."<a href='/tags.php?/".urlencode($row['tag'])."/' title='{$row['tag']}' target='_blank'>{$row['tag']}</a>");
}
return $tagsurl;
}
然后,在 /include/arc.archives.class.php 中,找到这句:
$this->Fields['tags'] = GetTags($aid);
在下面加一行:
$this->Fields['tagsurl'] = Tagslink($aid);
现在,把{dede:field.tagsurl/}加入文章页相应位置,可以看到效果了吧。另外,函数中<a href='/tags.php?/".urlencode($row['tag'])."/'部分,必须使用urlencode转换一下tags标签文字,要不然,链接文字为奇数时,将提示标签不存在。
function GetTags($aid)
{
global $dsql;
$tags = '';
$query = "Select tag From `#@__taglist` where aid='$aid' ";
$dsql->Execute('tag',$query);
while($row = $dsql->GetArray('tag'))
{
$tags .= ($tags=='' ? $row['tag'] : ','.$row['tag']);
}
return $tags;
}
该函数,使用{dede:field.tags/}可输出tags标签文字,但没有链接。如果修改红字部分,给这些标签加上链接,文章页显示正常了,但后台编辑文章时tags表单中就会出现链接内容,诸如:<a href='/tags.php?/关键词1' target='_blank'>关键词1</a> <a href='/tags.php?/关键词2' target='_blank'>关键词2</a> ... 等等。
为了不和后台编辑表单冲突,其实可单独定义一个函数,和GetTags函数类似,只是多出了链接部分。实现的效果
这里,函数名称定为Tagslink,使用{dede:field.tagsurl/}调用输出。
首先,在 /include/common.func.php 中定义如下函数(注意红字部分和GetTags函数的区别):
function Tagslink($aid)
{
global $dsql;
$tagsurl = '';
$query = "Select tag From `#@__taglist` where aid='$aid' ";
$dsql->Execute('tag',$query);
while($row = $dsql->GetArray('tag'))
{
$tagsurl .= ($tagsurl=='' ? "<a href='/tags.php?/".urlencode($row['tag'])."/' title='{$row['tag']}' target='_blank'>{$row['tag']}</a>" : ' '."<a href='/tags.php?/".urlencode($row['tag'])."/' title='{$row['tag']}' target='_blank'>{$row['tag']}</a>");
}
return $tagsurl;
}
然后,在 /include/arc.archives.class.php 中,找到这句:
$this->Fields['tags'] = GetTags($aid);
在下面加一行:
$this->Fields['tagsurl'] = Tagslink($aid);
现在,把{dede:field.tagsurl/}加入文章页相应位置,可以看到效果了吧。另外,函数中<a href='/tags.php?/".urlencode($row['tag'])."/'部分,必须使用urlencode转换一下tags标签文字,要不然,链接文字为奇数时,将提示标签不存在。
- DEDE显示tags标签并给标签加上链接
- 制作PDF,并给PDF加上标签
- dede标签
- DEDE标签
- dede标签
- dede标签
- 给ListView的scrollBar加上标签
- dede标签使用技巧 dede中显示当前栏目名称
- HTML+CSS基础 img标签border给显示的图片加上一个黑色边框
- button标签加上图片不显示边框
- 给标签云TAGS增加七彩背景色
- Struts2---tags标签
- Struts-Tags(标签)-1
- [UnityShader基础]Tags标签
- struts-dojo-tags datetimepicker标签无法正常显示问题 解决方案
- DEDE SQL标签可以获取文档静态链接地址
- 给dede:productimagelist标签增加autoindex索引的开发方法
- 给多窗口的程序加上多标签
- XP光盘安装系统时提示A:\\GHOSTERR.TXT
- 需要安装Directx9.0c以上版本和最新显卡驱动
- ubuntu root 修改密码与切换
- You don\'t have permission to access /test.php on this server.怎样解决Forbidden
- php源码加密
- DEDE显示tags标签并给标签加上链接
- 2个mysql,PHP选择
- 整合discuz会员同步(没试过)
- PHP SESSION原理
- PHP中$cookie小用法
- addslashes和 get_magic_quotes_gpc过滤SQL字符
- 18-回顾:h264中的CABAC
- Discuz注册推广与访问推广
- mysql 外键的作用,级联操作,起到约束作用