为Yii Blog加入”上一篇” “下一篇”功能

首先是扩展Post类,生成两个相应查询

public function nextpost()
{
    return self::model()->find(array('condition'=>'id>:id','params'=>array(':id'=>$this->id),'order'=>'t.id ASC'));
}

public function prevpost()
{
    return self::model()->find(array('condition'=>'id<:id','params'=>array(':id'=>$this->id),'order'=>'t.id DESC'));
}

话说我还不知道YII用t来代替当前表有啥缘故。

然后在相应view里加入代码:

<div>
    上一篇:
    <?php
    $prevpost=$model->nextpost();
    echo $prevpost?CHtml::link($prevpost->Label, $prevpost->Link):'无';
    ?>
</div>
<div>
    下一篇:
    <?php
    $nextpost=$model->prevpost();
    echo $nextpost?CHtml::link($nextpost->Label, $nextpost->Link):'无';
    ?>
</div>

发表评论