- 注册时间
- 2009-12-25
- 最后登录
- 2021-7-10
- 在线时间
- 3302 小时
- 阅读权限
- 200
- 积分
- 10
- 帖子
- 13416
- 精华
- 1
- UID
- 2036
  
|
未审核稿件的标签会显示在标签列表页面, 这可以说是DEDE的一个bug吧. 虽然点击进入标签时, 相关的未审核文章不会显示出来. 但一个没有内容的标签内容页面总是不好的用户体验.
6 R' t: T ?& B+ G/ P要解决这个问题, 让DEDE的不显示未审核稿件的标签, 就要修改标签的显示库文件 tag.lib.php- v2 z. Z# O. W# H# S1 o7 W
1 x$ P) G D9 k. `# }; r! a2 q
tag.lib.php这个文件可以在 /include/taglib/tag.lib.php 中找到, 这个文件就要控制 tag的显示, 在文件中找到以下代码.
& H* d* m0 Y! Z6 q& C2 D% e Fif(!empty($typeid))$ O. n7 j3 [* ^1 s- s2 N& `! |
{
9 _3 e. d. h! I, r$addsql = ” where typeid=’$typeid’ “;
8 Y8 {$ [; X8 b- p4 j" j9 W}
- ^; s# E& I' o6 p: W# C 修改成:
- h) j4 W1 W! |! r! X: V9 |$dsql->SetQuery(“Select tid From `#@__taglist` where arcrank<=-1″); $dsql->Execute();- s) y6 A- L, w3 x6 l9 j; H
$ids = ”;
1 O3 c. O$ ?0 `0 I: a# w9 Iwhile($row = $dsql->GetArray()). L h; Y: k; f# e. N
{
4 j3 D$ `) f2 c1 T/ R( W. V& [6 W$tid = $row['tid'];% N" \) ~* g* j! _9 Y- ~
$cquery = “Select count(*) as dd From `#@__taglist` where tid = $tid and arcrank<=-1″;0 m9 H. f6 X; C! z& O2 |
$crow = $dsql->GetOne($cquery);
- p4 z: L0 b3 s( Q6 J9 R) nif(!$crow['dd'])8 U+ L9 c7 D& k
{
* B2 B2 `7 g% K0 C: y b3 n$ids .= ( $ids==” ? $row['tid'] : ‘,’.$row['tid'] );
6 b, G4 |$ m7 ?) y}# u7 }8 ?$ [. k* N
}9 M2 A7 [; ~5 o9 o& s9 i
if($ids != ”)
R" v# i `4 y* e& p{
( z4 @( Y$ }5 A8 \5 w& ~9 W$addsql = ” where id not in($ids) “;5 K6 r8 B2 F( F8 t+ \& L7 ^
}/ m# T7 \ U/ _7 m4 C: }' V6 I, F1 y, H! U# Q
if(!empty($typeid))
6 M, t" B; m: Z5 W" ~" |* S{- v" ~, z& M( S0 N# s) ]
if($addsql): w( s3 g$ p0 _
{
# i1 Q' L8 R7 I# c5 @$addsql .= ” and typeid=’$typeid’ “;
" t1 F% r# c4 f; D& U h}else{$ H+ ?: Q: f' k# J+ F9 ~
$addsql = ” where typeid=’$typeid’ “;! [! u2 q# `% \7 t
}
2 ~$ a% S9 X+ Z2 {# d6 u7 J}( G9 |" ~9 Q3 x$ U3 a
这样就不会显示的未审核稿件的标签. |
|