Typecho随机文章列表
在var/Widget/Contents/Post
目录新建Rand.php文件,内容如下
if (!defined('__TYPECHO_ROOT_DIR__')) exit;
class Widget_Contents_Post_Rand extends Widget_Abstract_Contents
{
/**
* 执行函数
*
* @access public
* @return void
*/
public function execute()
{
$this->parameter->setDefault(array('pageSize' => $this->options->postsListSize));
$select = $this->select();
if(isset($this->request->mid)){
$select->join('table.relationships', 'table.contents.cid = table.relationships.cid')
->where('table.relationships.mid = ?', $this->request->mid);
}
$select->where('table.contents.status = ?', 'publish')
->where('table.contents.created < ?', $this->options->gmtTime)
->where('table.contents.type = ?', 'post')
->order('', 'RAND()')
->limit($this->parameter->pageSize);
$this->db->fetchAll($select, array($this, 'push'));
}
}
使用方法
<div>
<ul>
<?php $this->widget('Widget_Contents_Post_Rand','pageSize=5')
->parse('<li><a href="{permalink}">{title}</a></li>'); ?>
</ul>
</div>
显示某个分类下的随机文章
<div>
<ul>
<?php $this->widget('Widget_Contents_Post_Rand','pageSize=5','mid=3')
->parse('<li><a href="{permalink}">{title}</a></li>'); ?>
</ul>
</div>
此代码完美的解决了Single.主题,底部最新文章和归档页面的冲突问题.
转至:http://www.zhujimi.net/61.html
系统内置就有一个随机函数的
不懂怎么用,我只会按照教程复制粘贴做呢..
博主,2018最后一天的折腾,来年继续。
新的一年,折腾起来。
哟哟哟,切克闹..
昨天没上博客,效率真快啊
那天看了你的评论后想到还有个随机文章于是找到了这教程..嘿嘿
当初看到emlog和typecho时候,我就选择了typecho,因为emlog除了说说功能新颖外,ui设计太粗糙。我最近也在研究typecho功能设计,以后可以多交流了。另外,祝元旦快乐!
同乐,这程序果然轻便做个人博客很适合,以后有不懂的地方还得多请教您.
请教不敢担,交流是绝对要促进的嘛!