emlog侧边栏标签组件调用的标签根据标签的tid升序排列显示,即是先创建的标签排在前面,这种情况对于侧边栏调用了所有标签的网站不会有什么影响,但是如果设置了标签显示数量的话,那么侧边栏调用的标签就会总是先创建的几个,显示不够友好,这时可以考虑把标签随机显示。
1、编辑当前使用的emlog模板的module.php文件,找到代码:
$tag_cache = $CACHE->readCache('tags');
2、在该代码下面添加:
shuffle($tag_cache);$tag_cache = array_slice($tag_cache,0,10);
其中第二行是控制标签数量,如果显示所有标签,则删除第二行代码。
附:完整代码
<?php function widget_tag($title){global $CACHE;$tag_cache = $CACHE->readCache('tags');shuffle($tag_cache);$tag_cache = array_slice($tag_cache,0,10); //10是要调用的标签数量 ?>
<section class="widget divTags">
<h3><?php echo $title; ?></h3>
<ul> <?php foreach($tag_cache as $value): ?>
<li><a href="<?php echo Url::tag($value['tagurl']); ?>" title="<?php echo $value['tagname']; ?>"><?php echo $value['tagname']; ?></a></li> <?php endforeach; ?>
</ul>
</section><?php }?>
知识扩展:
shuffle(array)函数的作用是把数组中的元素按随机顺序重新排序,上述代码中的$tag_cache便是网站标签组成的一个数组。
THE END