dedecms5.1升级为5.3导致tag丢失怎么办?
dedecms5.1升级为5.3导致TAG丢失等问题处理
已经可以正常现实文章页面的 TAG 带链接哦,而且升级前文章的TAG 都已经恢复了。下面是具体的解决方法。主要是最后的那句sql执行以下即可。
推荐学习:织梦cms
其实修复TAG问题的回答论坛上很多人都已经回答过了,可能是大家都没有认真的去尝试,并不是人家提供的代码不对
而是你不能完全的COPY人家的代码,很多代码要修改数据表前缀才能使用。
下面介绍一下我解决TAG 问题的方法:
首先是在文章页面调用当前文章的TAG代码:
直接用Tag: {dede:field.tags/} 替换原来的代码
比如说我网站以前获得当前文章TAG代码是这样的注意红色部分是代码,黑色你自己随便:
Tag :{dede:tag type=current/}
Tag: {dede:field.tags/}
上面是第一部,下面要修改DEDE CMS 的相关文件了,打开includecommon.func.php这个文件
找到 //获得某文档的所有tag 这一部分,把下面的这些代码
代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
function GetTags($aid)
{
global $dsql;
$tags = ;
$query = "Select tag From [url=mailto:`ddmx_taglist]`ddmx_taglist[/url]` where aid=$aid ";
$dsql->Execute(tag,$query);
while($row = $dsql->GetArray(tag))
{
$tags .= ($tags== ? $row[tag] : ,.$row[tag]);
}
return $tags;
}
function ParamError()
{
ShowMsg(对不起,你输入的参数有误!,javascript:;);
exit();
}
替换成为下面的这些代码,期间要根据自己的实际情况修改自己的表前缀。
注意下面的那个dede_dedecmstaglist,根据自己的表前缀修改一下吧。
代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
function GetTags($aid)
{
global $dsql;
$tags = ;
$query = "Select tag From `dede_dedecmstaglist` where aid=$aid ";
$dsql->Execute(tag,$query);
while($row = $dsql->GetArray(tag))
{
$tags .= ($tags== ? "<a>{$row[tag]}</a>" : ,."<a>{$row[tag]}</a>");
}
return $tags;
}
function ParamError()
{
ShowMsg(对不起,你输入的参数有误!,javascript:;);
exit();
}
OK,现在只要你的文章的TAG没有丢失的话,完成上面的步骤就可以在文章页调用带链接的文章TAG了。
如果你的TAG在升级过程中丢失的话,那么执行下面的步骤吧。
进入你的网站管理后台
选择“系统”----------“SQL命令行工具”
运行SQL命令:
代码如下:
1
UPDATE dede_tagindex,dede_taglist SET dede_taglist.tag = dede_tagindex.tag WHERE dede_taglist.tid=dede_tagindex.id;
注意不要完全COPY上面的代码哦,更加自己的实际情况修改表前缀.
以上就是dedecms5.1升级为5.3导致TAG丢失怎么办的详细内容,更多请关注php中文网其它相关文章!