Tag会重复创建。 · Issue #192 · zblogcn/zblogphp -
https://github.com/zblogcn/zblogphp/issues/192
产生重复的原因目前已查明是空白过滤不彻底;
对于已经入库的,可以使用下边函数遍历所有文章修复,默认会将重复Tag指向ID最大的那个。。
function FixPostTags($id){
global $zbp;
$article = $zbp->GetPostByID($id);
$tagsIDString = $article->Tag;
$tagsName = $article->TagsName;
$zbp->tags=array();
$zbp->tagsbyname=array();
$newIDString = PostArticle_CheckTagAndConvertIDtoString($tagsName);
if ($newIDString !== $tagsIDString) {
$article->Tag = $newIDString;
$article->Save();
}
}
如果想以ID最小的为准,则需要在系统文件中应用补丁方案:
if (isset($this->tagsbyname[$v->Name]))
continue;
public function LoadTagsByNameString($s)
{
……
$array = $this->GetTagList('', array(array('array', $a)), '', '', '');
foreach ($array as $v) {
if (isset($this->tagsbyname[$v->Name]))
continue;
$this->tags[$v->ID] = $v;
$this->tagsbyname[$v->Name] = &$this->tags[$v->ID];
$t[$v->Name] = &$this->tags[$v->ID];
}
return $b + $t;
……
}
Todo移除多余的Tag条目;
「QQ群:」「「水坑」系列教程索引」
我大概率能够解决你实际面临的问题(收费),只是”你提出的问题“要如何回答则可能是另一个问题。