记录学习与后端知识并分享学习代码过程(会飞的鱼Blog)

实现emlog侧边栏标签组件的标签随机显示

会飞的鱼 0 1751 2017年9月26日

emlog侧边栏标签组件调用的标签根据标签的tid升序排列显示,即是先创建的标签排在前面,这种情况对于侧边栏调用了所有标签的网站不会有什么影响,但是如果设置了标签显示数量的话,那么侧边栏调用的标签就会总是先创建的几个,显示不够友好,这时可以考虑把标签随机显示。

操作步骤:

1、编辑当前使用的emlog模板的module.php文件,找到代码:

1$tag_cache = $CACHE->readCache('tags');

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便是网站标签组成的一个数组。

本文由 @会飞的鱼 于 2017-9-26 发布在 会飞的鱼Blog,如无特别说明,本博文章均为原创,转载请保留出处。

网友评论

    暂无评论

会飞的鱼 在线咨询

在线时间:9:00-22:00
周六、周日:14:00-22:00