Typecho调用随机文章的代码分享 二次开发手册

  筱晗's
2021-05-27 / 0 评论 / 11 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2021年05月27日,已超过150天没有更新,若内容或图片失效,请留言反馈。

今天雪花博客给大家分享直接通过函数代码调用随机文章的代码。让更多朋友可以自己学习开发Typecho主题功能。
u=3087675103,3300994286&fm=26&gp=0.jpg

定义函数

在模板根目录下 /functions.php文件中加入以下代码:

function getRandomPosts($limit = 10){    
    $db = Typecho_Db::get();
    $result = $db->fetchAll($db->select()->from('table.contents')
        ->where('status = ?','publish')
        ->where('type = ?', 'post')
        ->where('created <= unix_timestamp(now())', 'post')
        ->limit($limit)
        ->order('RAND()')
    );
    if($result){
        $i=1;
        foreach($result as $val){
            if($i<=3){
                $var = ' class="red"';
            }else{
                $var = '';
            }
            $val = Typecho_Widget::widget('Widget_Abstract_Contents')->push($val);
            $post_title = htmlspecialchars($val['title']);
            $permalink = $val['permalink'];
            echo '<li><i'.$var.'>'.$i.'</i><a href="'.$permalink.'" title="'.$post_title.'" target="_blank">'.$post_title.'</a></li>';
            $i++;
        }
    }
}

在要显示随机文章的地方添加以下调用代码,比如要在侧边栏显示随机文章,一般是添加到主题的sidebar.php文件,当然不同的文章模板可能不一样,请根据自己的模板添加。

输出调用

<?php getRandomPosts('10');?>

代码中的数字10代表输出文章的数量,可根据自己的实际情况进行修改!

0

评论 (0)

取消