- 注册时间
- 2009-12-25
- 最后登录
- 2021-7-10
- 在线时间
- 3302 小时
- 阅读权限
- 200
- 积分
- 10
- 帖子
- 13416
- 精华
- 1
- UID
- 2036
|
未审核稿件的标签会显示在标签列表页面, 这可以说是DEDE的一个bug吧. 虽然点击进入标签时, 相关的未审核文章不会显示出来. 但一个没有内容的标签内容页面总是不好的用户体验.
- C$ E2 P; E0 d要解决这个问题, 让DEDE的不显示未审核稿件的标签, 就要修改标签的显示库文件 tag.lib.php: a& V5 d% Q, x
) D' V3 q( g. B, i
tag.lib.php这个文件可以在 /include/taglib/tag.lib.php 中找到, 这个文件就要控制 tag的显示, 在文件中找到以下代码.( Z. U1 z" u2 P1 K6 z, S9 `( Z
if(!empty($typeid))
* L, k# E1 p8 u% K+ ?5 l( q( `& r5 H{- e# j# c# Y* `" S% W
$addsql = ” where typeid=’$typeid’ “;6 N) o8 z' q$ F% x- Y+ K N
}4 P/ n# R6 E( x, T( h$ i. m# q
修改成:' L, N! P) t( `+ m( @
$dsql->SetQuery(“Select tid From `#@__taglist` where arcrank<=-1″); $dsql->Execute();, a: E; p, T( y% v" k! {$ ?1 S
$ids = ”;
% C- `* ^/ ~/ |1 o7 p% Ywhile($row = $dsql->GetArray()) K$ b. \7 u! T5 f- y. E# ^% g
{% }; }; D) T4 I( b
$tid = $row['tid'];/ `: j" {' L! O' ?
$cquery = “Select count(*) as dd From `#@__taglist` where tid = $tid and arcrank<=-1″;4 H* A2 C- p9 G1 P+ ^
$crow = $dsql->GetOne($cquery);; e' i& J C* r
if(!$crow['dd'])3 S" s1 @6 Q1 {' L9 S) r. j
{
; k$ j$ X- w# X5 c: G( Y$ h4 v+ P$ids .= ( $ids==” ? $row['tid'] : ‘,’.$row['tid'] );
3 W% I, n0 p, F/ Q}
" ]' r3 R6 v6 J( }}( g: A, G K3 s; b6 t, I }' ~
if($ids != ”)8 G3 V5 N- N D# ^% P
{1 n5 G9 o0 {/ v; a3 E
$addsql = ” where id not in($ids) “;( D: U- x1 c* w5 X+ m& M
}$ s9 }4 g/ @( \' y
if(!empty($typeid))) L% x$ i' I% ~! ~* f& n6 x
{- Y# Z4 B- s2 F7 f( r5 T) }
if($addsql)
7 z O: Q$ t- E( a6 m5 c$ Y{
" r7 s4 |! X% I; e$addsql .= ” and typeid=’$typeid’ “;' n; }/ U: W( @- I g9 X
}else{
" A% P4 V# T9 b. i2 s! |6 M% o5 H3 h$addsql = ” where typeid=’$typeid’ “;" E2 \- v; M+ S9 ~
}
7 [+ V1 ?% s2 O) b+ M0 A}0 h9 K. X. K5 N
这样就不会显示的未审核稿件的标签. |
|