- 注册时间
- 2009-12-25
- 最后登录
- 2021-7-10
- 在线时间
- 3302 小时
- 阅读权限
- 200
- 积分
- 10
- 帖子
- 13416
- 精华
- 1
- UID
- 2036
  
|
未审核稿件的标签会显示在标签列表页面, 这可以说是DEDE的一个bug吧. 虽然点击进入标签时, 相关的未审核文章不会显示出来. 但一个没有内容的标签内容页面总是不好的用户体验.. Y6 I0 t) m2 C' o3 } q
要解决这个问题, 让DEDE的不显示未审核稿件的标签, 就要修改标签的显示库文件 tag.lib.php
6 [! U! V7 @+ W2 u. O
1 b, m5 {" x: M \5 ctag.lib.php这个文件可以在 /include/taglib/tag.lib.php 中找到, 这个文件就要控制 tag的显示, 在文件中找到以下代码.
- ^- u: f% x4 K- ^. F, v3 iif(!empty($typeid))
. G9 D, c5 D5 z6 f" Y{
7 N+ f3 c2 {$ K/ ^8 `% i3 i+ m& F$addsql = ” where typeid=’$typeid’ “;
0 C3 ^/ _2 H5 o! D( w& `$ J}- L: W; }# Q; f% N: U( s
修改成:
( F3 ?) ^- w8 H# U& W5 V* d$dsql->SetQuery(“Select tid From `#@__taglist` where arcrank<=-1″); $dsql->Execute();
; u* i! w8 S( C& Y2 }2 y: m+ Z! M# g$ids = ”;
q3 Z& m' x3 F& I6 u* k+ J ywhile($row = $dsql->GetArray())
* p C! g9 Z4 V8 s; |# `{
+ U8 `% y/ u' P2 [# Y$tid = $row['tid'];
2 J) G# i/ N% B6 t7 A+ | C9 D$cquery = “Select count(*) as dd From `#@__taglist` where tid = $tid and arcrank<=-1″;
, g6 G/ q8 K% g4 ^0 [6 }+ ]# G$crow = $dsql->GetOne($cquery);0 B0 u. O( m& m
if(!$crow['dd'])) [" Y7 V1 n, I6 \( ]2 Y
{0 f0 F/ u8 U0 g; Q( n6 q4 n6 o9 w
$ids .= ( $ids==” ? $row['tid'] : ‘,’.$row['tid'] );
% T H& U5 v% s( h0 x3 X}$ l0 M$ T) Y. `6 U4 ]
}! H0 `% e6 Q9 s; Z% F' _% I
if($ids != ”)
$ Q( R* @: N3 Y' B- W$ |" [0 l6 r{
1 T' y4 V+ m* a: ] M% I4 d$addsql = ” where id not in($ids) “;8 u4 t# _7 ~% q
}2 W- B3 }4 ^1 W R+ W- g
if(!empty($typeid))) s% s* t. x- F- l( P
{, J# o* } `9 ]6 V* h; N
if($addsql): D8 b! e! p9 e4 ~
{
3 x: t( w z$ N, G8 x8 o+ P$addsql .= ” and typeid=’$typeid’ “;
' k5 \$ L6 D. R! w1 d; v9 t( f8 y}else{' g* R9 Y. U- t2 n! d
$addsql = ” where typeid=’$typeid’ “;
. q- f5 ]+ ?. j+ U+ @: w6 N}
E( h' N {% j) y- m}" C* j6 V7 G6 W( `
这样就不会显示的未审核稿件的标签. |
|