在使用 DedecmsCMS 的过程中,您可能会发现文章快速属性编辑功能无法直接编辑 TAG 标签。这无疑给日常管理带来了不便。经过一番研究和实践,我们找到了一种方法,可以为 DedecmsCMS 的快速属性编辑功能添加 TAG 标签编辑支持。
许多用户可能尚未充分利用 DedecmsCMS 的“快速属性编辑”功能。实际上,在所有文档列表中,每篇文章的操作选项里,第一个就是“快速属性编辑”。这项功能非常实用,能够帮助管理员高效地对文章属性进行批量修改。
要实现 TAG 标签的快速编辑,首先需要打开 DedecmsCMS 管理员文件夹下的 archives_do.php 文件,并搜索“快速编辑”相关的代码段。
找到以下代码:
require_once(DEDEADMIN."/inc/inc_catalog_options.php");
在其下方添加以下代码:
require_once(DEDEINC."/dedetag.class.php");
$tags = GetTags($aid);
接下来,继续查找以下代码段:
关键字:
在其后添加如下代码:
TAG标签:
最后一步是定位到以下代码:
if($typeid != $oldtypeid)
{
$addtable = trim($addtable);
if(empty($addtable)) $addtable = 'dede_addonarticle';
else $addtable = preg_replace("#[^a-z0-9__#@-]#i", "", $addtable);
$dsql->ExecuteNoneQuery(" UPDATE `$addtable` SET typeid='$typeid' WHERE aid='$aid' ");
}
在这段代码之后插入以下内容:
if($tags!='')
{
$oldtag = GetTags($aid);
$oldtags = explode(',',$oldtag);
$tagss = explode(',',$tags);
foreach($tagss as $tag)
{
$tag = trim($tag);
if(isset($tag[12]) || $tag!=stripslashes($tag))
{
continue;
}
if(!in_array($tag,$oldtags))
{
InsertOneTag($tag,$aid);
}
}
foreach($oldtags as $tag)
{
if(!in_array($tag,$tagss))
{
$dsql->ExecuteNoneQuery("DELETE FROM `dede_taglist` WHERE aid='$aid' AND tag LIKE '$tag' ");
$dsql->ExecuteNoneQuery("UPDATE `dede_tagindex` SET total=total-1 WHERE tag LIKE '$tag' ");
}
else
{
$dsql->ExecuteNoneQuery("UPDATE `dede_taglist` SET `arcrank` = '$arcrank', `typeid` = '$typeid', aid='$aid' WHERE tag LIKE '$tag' ");
}
}
}
请注意:
上述代码中有写入数据库的操作,请根据您的实际数据库表前缀(例如默认的“dede_”)进行相应修改,以确保代码能够正确运行。
通过以上步骤,您可以成功为 DedecmsCMS 的快速属性编辑功能添加 TAG 标签的支持,从而大幅提升工作效率。