emlog侧边栏TAG.html" target="_blank" class="relatedlink">标签优化显示教程,这个标题似乎很笼统,如何优化显示,主要是减少显示标签的数量,还可以加点颜色换下样式,让标签不显得单调。
% Z5 C% Q' B2 I1 y3 t! V. M0 l现在很多博客的标签数量已经非常庞大了。如果全都都显示在侧边栏,会占很大的篇幅。下面详细的介绍一下减少标签的方法。
9 S J" l/ y; B d1、按指定标签数量随机显示: ^, v& M5 I0 G s8 }
打乱标签的数组,然后限制标签的数量。代码如下:- <?php
" J- `: c8 t+ p+ `* X0 H8 { - //widget:标签! m& T2 o5 A1 }0 i' q
- function widget_tag($title){/ S6 \) o, O& b) S3 B! C
- global $CACHE;
) T. Y) N: }0 @0 H! b8 o: k - $tag_cache = $CACHE->readCache('tags');- q* e' ^9 _) l! |3 y: U
- shuffle($tag_cache); //添加这行代码实现标签随机排序
& G2 X H# K% P' \ - $num='20';指定标签个数
7 ]- ~4 q; n" Z- c - ?>' d5 h/ V* z1 o ~
- <?php foreach($tag_cache as $key => $value):if($key < $num):% U/ D0 Q3 v' K
- $color = dechex(rand(3355443,13421772));?>& s( [$ H* m" Q- ]. v! |4 [5 [, n
- <li class="tags"><a class="label" style="background:#<?php echo $color; ?>" href="<?php echo Url::tag($value['tagurl']); ?>" title="<?php echo $value['usenum']; ?> 篇文章"><?php echo $value['tagname'],' +',$value['usenum']; ?></a></li>2 \; {, J' t2 z$ K+ P
- <?php endif; endforeach; }?>
复制代码 2、将标签排序按条件显示:3 U% c/ H7 o/ h3 ]+ U k
将标签按照文章相关数进行排序,然后显示文章相关数大于一个数(如:1)的标签。代码如下:- <?php( f0 `1 y* [) f- M
- //widget:标签
. k- d* B2 X8 s' R F8 }* K, M# v - function widget_tag($title){
5 x8 D9 e# }) D# b6 b! e! y - global $CACHE;
4 E- k+ k/ k9 ?. V - $tag_cache = $CACHE->readCache('tags');
# m2 ^. @+ s* M6 C3 E; H! Q - //start 开始排序* S# L8 J* x& |$ i/ x% O
- foreach ($tag_cache as $key => $row) {
' r( T5 ?6 ?8 c _: ^& v; i - $usenum[$key] = $row['usenum'];
, f8 ?& R% m2 m8 W$ H* W1 O/ E9 J1 q - }2 t: l& Z9 V7 w( T; P1 q0 [/ n4 {
- array_multisort($usenum, SORT_DESC, $tag_cache);/ P1 G. H9 B6 x1 H) z4 P0 f0 H
- //end 获取排序后的新数组 $tag_cache
" C) b# ~6 ?9 L) N# B- s1 E z - ?>
0 X; X3 y) H+ q7 P# o - ……省略外层的div+CSS7 {3 X! e( r+ E, M
- <?php foreach($tag_cache as $value):- J+ g( O/ l) U0 A- R. i8 ^- ^- I; l
- if($value['usenum'] > '1'): //1可以更改为大于1的其他数字,控制文章相关数* U/ Y" l+ k; g
- $color = dechex(rand(3355443,13421772));?>- D3 k* }# C+ ?! q
- <li class="tags"><a class="label" style="background:#<?php echo $color; ?>" href="<?php echo Url::tag($value['tagurl']); ?>" title="<?php echo $value['usenum']; ?> 篇文章"><?php echo $value['tagname'],' +',$value['usenum']; ?></a></li>
! i9 S; U" w7 J4 S - <?php endif; endforeach; }?>
复制代码
; T8 U& U1 P( u# o |