在使用PbootCMS的过程中,可能会遇到这样一个问题:当后台将文章状态设置为关闭时,前台生成的tag标签却没有随之消失。虽然在日常使用中这个问题可能影响不大,但如果网站右侧有tags列表展示,并且还配了数量显示,那么用户点击带有数量的标签却看不到内容时,体验效果会大打折扣。接下来,我们将详细介绍如何修复这一问题,使tag标签能够根据文章状态实现显示或隐藏。
实现方法
首先,打开文件 \\\\apps\\\\home\\\\model\\\\ParserModel.php,找到 getSortTags($scode) 函数的位置。
在这个函数的最后,你会看到以下代码:
$result = parent::table('ay_content a')->where("c.type=2 AND a.tags<>''")
->where($scode_arr, 'OR')
->join($join)
->order('a.visits DESC')
->column('a.tags');
return $result;
请将上述代码修改为以下内容,并保存文件:
$result = parent::table('ay_content a')->where('a.status=1')->where("c.type=2 AND a.tags<>''")
->where($scode_arr, 'OR')
->join($join)
->order('a.visits DESC')
->column('a.tags');
return $result;
方法解读
通过上述修改,我们在查询数据库时增加了一个状态判断条件 where('a.status=1')。这个条件确保只有状态为开启的文章才会被纳入到标签统计中。这样,当文章状态被设置为关闭时,其对应的tag标签将不会出现在前台展示中。
完成以上步骤后,您的网站将会更加符合用户体验需求,避免因标签与实际内容不匹配而导致的不良体验。
希望这篇文章对您有所帮助!如果您有任何疑问或需要进一步的帮助,请随时联系我们。