- 注册时间
- 2009-12-25
- 最后登录
- 2021-7-10
- 在线时间
- 3302 小时
- 阅读权限
- 200
- 积分
- 10
- 帖子
- 13416
- 精华
- 1
- UID
- 2036
  
|
未审核稿件的标签会显示在标签列表页面, 这可以说是DEDE的一个bug吧. 虽然点击进入标签时, 相关的未审核文章不会显示出来. 但一个没有内容的标签内容页面总是不好的用户体验.
1 B, B( B, F8 b* c要解决这个问题, 让DEDE的不显示未审核稿件的标签, 就要修改标签的显示库文件 tag.lib.php
) a( }1 Q4 S9 H+ P% s& q$ E& T0 Y' P0 t
" Q1 z9 y7 n* X+ Y" }3 Qtag.lib.php这个文件可以在 /include/taglib/tag.lib.php 中找到, 这个文件就要控制 tag的显示, 在文件中找到以下代码.
* r/ j7 q3 c! |+ N) [# vif(!empty($typeid))* D4 t+ D! e( w( ?6 w; }4 h4 N
{
5 z- V6 b& G) B5 @0 \0 K$addsql = ” where typeid=’$typeid’ “;
1 u" V6 L: j3 v# k' L}
# S7 |* m5 j& l4 q4 ` 修改成:
0 A. j+ M, P- J$ L$dsql->SetQuery(“Select tid From `#@__taglist` where arcrank<=-1″); $dsql->Execute();
. d9 v* s/ x4 d$ids = ”;/ f8 V" e( L( W
while($row = $dsql->GetArray())
4 `/ v: R. h) y+ P{9 t) A" @6 M1 X5 _& ~
$tid = $row['tid'];7 ?& Y7 G4 o7 n. |/ a
$cquery = “Select count(*) as dd From `#@__taglist` where tid = $tid and arcrank<=-1″;
P! o$ d% [. ]5 h$ d5 X4 C$crow = $dsql->GetOne($cquery);
( c5 B J! M) E- mif(!$crow['dd'])9 F+ ?; A* z) x7 h, s* K* ^
{$ x e; Q1 p; W9 q0 `* L! k4 P
$ids .= ( $ids==” ? $row['tid'] : ‘,’.$row['tid'] );% [' h' B5 E" q E* t8 }
}7 {+ t$ T& v. F8 P: Q
}, x0 r" m7 O/ X
if($ids != ”)
6 l* Y& W3 z3 m{2 U9 b$ ^5 @1 T
$addsql = ” where id not in($ids) “;: S# {; W) p, z" R: c% n; |
}
0 [; M1 N- \6 Cif(!empty($typeid))7 h& Q% O4 w9 C+ ], Z# H
{9 p' s P& ~; V
if($addsql)8 x, ?. u s; W3 y! p
{4 \" ]7 n. s2 p/ z
$addsql .= ” and typeid=’$typeid’ “;- q3 o2 \( \; d8 ~8 E
}else{3 n# a5 @1 |7 R$ b! L K+ v; V: b
$addsql = ” where typeid=’$typeid’ “;/ x+ U' x+ [6 E L
}% y* Y/ Z# u. K# ^0 S
}
z& _% H9 C, W' f0 O 这样就不会显示的未审核稿件的标签. |
|