- 注册时间
- 2009-12-25
- 最后登录
- 2021-7-10
- 在线时间
- 3302 小时
- 阅读权限
- 200
- 积分
- 10
- 帖子
- 13416
- 精华
- 1
- UID
- 2036
  
|
未审核稿件的标签会显示在标签列表页面, 这可以说是DEDE的一个bug吧. 虽然点击进入标签时, 相关的未审核文章不会显示出来. 但一个没有内容的标签内容页面总是不好的用户体验.( A) X+ k9 k( r: t u. S
要解决这个问题, 让DEDE的不显示未审核稿件的标签, 就要修改标签的显示库文件 tag.lib.php
5 {* M0 V* l3 K4 q& ^" e( a* z3 T: H* h) ^4 l/ M8 d
tag.lib.php这个文件可以在 /include/taglib/tag.lib.php 中找到, 这个文件就要控制 tag的显示, 在文件中找到以下代码.5 H3 D' m) c }
if(!empty($typeid))
2 f& e7 j6 i f6 D{
0 d; L6 H) {6 A8 j( D$addsql = ” where typeid=’$typeid’ “;1 z2 ~2 ?7 l8 t, E2 H
}* _! Z- f* K/ B$ o/ E" w
修改成:6 k# Y: X& K1 {( q$ R" z+ @
$dsql->SetQuery(“Select tid From `#@__taglist` where arcrank<=-1″); $dsql->Execute();5 ?6 W# v. j) F4 _
$ids = ”;
0 x1 K9 ?* \0 c# cwhile($row = $dsql->GetArray())( ?$ U2 L& \' J w# l) E
{ I9 U, T3 |- u2 p6 G
$tid = $row['tid'];
* P+ [; r8 H2 \1 l/ A# U$cquery = “Select count(*) as dd From `#@__taglist` where tid = $tid and arcrank<=-1″;
U5 K- ?; J+ {- t$crow = $dsql->GetOne($cquery);4 Y! B9 c- M1 U) _) X9 B
if(!$crow['dd'])( h. t7 k# a0 {3 s+ h
{
. w. X0 a" K) l5 F( ~4 Y$ids .= ( $ids==” ? $row['tid'] : ‘,’.$row['tid'] );+ _0 k! C E" \0 `2 r
}1 l6 \/ V, B- r" S0 ?- t
}
$ J K9 m. c; g8 y+ T X! r% vif($ids != ”)
1 u S1 e. ?2 J: H h7 |: h+ H# p{
/ Q/ r5 n/ }$ }; ^# O) I$ x$addsql = ” where id not in($ids) “;& w0 H9 @! k/ h7 Y1 p& z
}
- w0 A7 |* H' q7 \if(!empty($typeid))3 s9 M+ a) |8 w" ^0 S4 P# m
{
- V) }, Q) f# u2 C3 \3 w o+ Yif($addsql)6 L( j6 Y* {0 p
{
- ?; K9 ~+ v; a" x% G" g: G0 b$addsql .= ” and typeid=’$typeid’ “;% o a% j1 `* L. Y
}else{+ ~+ c d% o. ^( M
$addsql = ” where typeid=’$typeid’ “;: K* G6 E# n7 O5 h/ S. z
}
p2 I1 S5 F+ [0 r2 m}
3 S! G7 n+ @) T0 l& ^0 H. {; j6 \, F 这样就不会显示的未审核稿件的标签. |
|