- 注册时间
- 2009-12-25
- 最后登录
- 2021-7-10
- 在线时间
- 3302 小时
- 阅读权限
- 200
- 积分
- 10
- 帖子
- 13416
- 精华
- 1
- UID
- 2036
  
|
未审核稿件的标签会显示在标签列表页面, 这可以说是DEDE的一个bug吧. 虽然点击进入标签时, 相关的未审核文章不会显示出来. 但一个没有内容的标签内容页面总是不好的用户体验.
' F& O$ G Y6 H" K/ s; i1 U: @- l w0 K要解决这个问题, 让DEDE的不显示未审核稿件的标签, 就要修改标签的显示库文件 tag.lib.php9 @7 K b# V& f0 Q, p
6 K) d. d5 T2 C1 Y; C+ b+ v
tag.lib.php这个文件可以在 /include/taglib/tag.lib.php 中找到, 这个文件就要控制 tag的显示, 在文件中找到以下代码.
2 K4 }$ C, w) p5 s4 Nif(!empty($typeid))
$ t7 |0 d ]: }# |$ [{
7 _3 Z. l7 G, ]$addsql = ” where typeid=’$typeid’ “;
, o& ~8 j* N6 ` @" z4 `1 j) l}
* @# X0 F# l$ @5 U" L& I- ] 修改成:
6 z2 m h6 r, F' h$ j$dsql->SetQuery(“Select tid From `#@__taglist` where arcrank<=-1″); $dsql->Execute();
4 v/ a. |' E( a; v$ids = ”;
. k2 C% u$ @4 |# Z. T2 u |. zwhile($row = $dsql->GetArray())% l/ N% U. {6 s0 I& c% j
{- E! }8 ~+ U5 c( F; i; N; q
$tid = $row['tid'];
' ~2 {9 ~# m* ^2 [4 l( J2 ~0 _. s+ N$cquery = “Select count(*) as dd From `#@__taglist` where tid = $tid and arcrank<=-1″;9 [( O! r& @" T3 O0 E
$crow = $dsql->GetOne($cquery);
) Q/ q( ?- {, fif(!$crow['dd'])
! R" n8 H1 Q& P( Z) D: y( \1 c{! C( W% t: Z# r: n. G4 h
$ids .= ( $ids==” ? $row['tid'] : ‘,’.$row['tid'] );
0 \) B# O+ J+ O6 n! A( I9 A}
2 ?- B2 C1 O( L}: `& J' C0 E* }7 T1 J& o
if($ids != ”)
" o* b U% P0 _5 a1 w% e6 [0 t{
! P7 s3 f+ Z! `1 u4 y$addsql = ” where id not in($ids) “;
# M; T0 \# o, A W% U}7 _1 k4 C$ l; q9 g+ O
if(!empty($typeid))$ o' ~, [1 E; I- D7 t( O
{
0 g! S8 g* o. K4 {if($addsql)/ b$ s8 G9 ]5 y2 u7 n; j
{! g# o$ h& [0 @4 h9 D
$addsql .= ” and typeid=’$typeid’ “;
" M- I( }" [3 T# [) t/ b}else{
7 }* a% p$ o2 E" x2 U- d2 A0 x$addsql = ” where typeid=’$typeid’ “;5 ^0 T$ c/ I; f' d2 _
}0 [9 K: Z6 t' m f+ [& S
}" E' W2 N3 d; `+ \( O
这样就不会显示的未审核稿件的标签. |
|