CMS重写Content类:自定义方式的内容下一篇上一篇序列
我们以Demo模块为例,新建App/Demo/Models/Content.php
<?php namespace Phpcmf\Model\Demo;
// 模块内容模型类
class Content extends \Phpcmf\Model\Content {
// 格式化显示内容
public function _call_show($data) {
// 上一篇文章
$builder = $this->db->table($this->mytable);
$builder->where('catid', (int)$data['catid']);// 本栏目下
$builder->where('status', 9);
$builder->where('id<', (int)$data['id'])->orderBy('id desc'); // 这里是按照id升降序的,你可以改成其他方式
$data['prev_page'] = $builder->limit(1)->get()->getRowArray();
// 下一篇文章
$builder = $this->db->table($this->mytable);
$builder->where('catid', (int)$data['catid']);// 本栏目下
$builder->where('status', 9);
$builder->where('id>', (int)$data['id'])->orderBy('id asc'); // 这里是按照id升降序的,你可以改成其他方式
$data['next_page'] = $builder->limit(1)->get()->getRowArray();
return $data;
}
}
此函数_call_show表示内容详情页面的自定义输出数组,开发者你可以随便赋值和修改变量值。
本文档展示了如何在CMS系统中,以Demo模块为例,自定义Content类来实现内容详情页的上一篇和下一篇功能。通过查询本栏目下状态为9的文章,按ID的升序或降序来获取相邻文章。该方法可以灵活调整以适应不同的排序需求。

86万+

被折叠的 条评论
为什么被折叠?



