- 注册时间
- 2009-12-25
- 最后登录
- 2021-7-10
- 在线时间
- 3302 小时
- 阅读权限
- 200
- 积分
- 10
- 帖子
- 13416
- 精华
- 1
- UID
- 2036
|
未审核稿件的标签会显示在标签列表页面, 这可以说是DEDE的一个bug吧. 虽然点击进入标签时, 相关的未审核文章不会显示出来. 但一个没有内容的标签内容页面总是不好的用户体验.9 T, i. u3 u8 A. S2 k' X
要解决这个问题, 让DEDE的不显示未审核稿件的标签, 就要修改标签的显示库文件 tag.lib.php
9 q$ c8 b0 Q0 \/ G U3 \
2 I5 R7 n, b) W' \/ D: t. Ytag.lib.php这个文件可以在 /include/taglib/tag.lib.php 中找到, 这个文件就要控制 tag的显示, 在文件中找到以下代码.5 {+ b0 n& V0 V* Z; G
if(!empty($typeid)) y& m6 j) C. y0 w; g; M
{
- [) h$ g& ]- _1 r0 a, }# P$addsql = ” where typeid=’$typeid’ “;6 P; F* U8 z% Q4 @
}, y3 G( b0 g; a; o
修改成:
6 ^: I" l. x" c1 J/ Z$dsql->SetQuery(“Select tid From `#@__taglist` where arcrank<=-1″); $dsql->Execute();
# S7 [& G! P' |) E# z4 F$ids = ”;
' Y7 T( F8 E) D$ U5 ~1 Swhile($row = $dsql->GetArray())
- @0 D) \2 f: Z. j7 W+ z4 ?{
7 O# m) ~- m- o4 h! f! Q4 d$tid = $row['tid'];
( j. Q- F; |4 A$cquery = “Select count(*) as dd From `#@__taglist` where tid = $tid and arcrank<=-1″;/ c" E8 P5 e8 e8 |. L
$crow = $dsql->GetOne($cquery);9 W, m8 i2 E; A, @8 @0 U' M: K# u
if(!$crow['dd'])3 j4 T( o, A( S* S* q2 _
{
+ k; ^9 i! d( H/ m$ids .= ( $ids==” ? $row['tid'] : ‘,’.$row['tid'] );
" j! X: S, z6 L y}
3 _3 v# \$ W/ i}
4 l0 B# x# n @8 D" c3 Hif($ids != ”)1 ?/ \2 j+ F1 g T# R3 v
{
( J7 X9 W- a, R$addsql = ” where id not in($ids) “;
x. B$ d! C: F+ e}5 T3 k. A0 t- C& @5 t0 Z& y
if(!empty($typeid))
$ R, _# D+ k! t+ C{2 E% z8 _1 L6 [2 M: K
if($addsql)
8 }) q, |. z$ ^+ |; }( n{
$ r* _0 z. M4 i" ^- y5 Z1 s- P, @$addsql .= ” and typeid=’$typeid’ “;
% Y& B9 i7 Z+ }9 H9 |0 z$ _' i9 g}else{
6 Q8 A- ` J+ X3 n$addsql = ” where typeid=’$typeid’ “;
* G. T* b+ t d4 W% m}
0 W' s! Q) h* c$ t8 t* m- p}. f; m: E8 D" j0 j5 k
这样就不会显示的未审核稿件的标签. |
|