【发布时间】:2021-10-17 07:20:09
【问题描述】:
我正在 Codeigniter 中创建博客。现在在博客文章查看页面上,我想要上一篇和下一篇文章的链接。这是我的博客详细信息控制器。
public function blog_details($slug = NULL){
//data
$data['blog_info'] = $this->Blog_model->get_posts($slug);
if(empty($data['blog_info'])){
show_404();
}
$data['post_name'] = $data['blog_info']['post_name'];//post name
$data['categories'] = $this->Blog_model->get_categories();
//meta title, discription, keywords
$data['meta_title'] = $data['blog_info']['post_name'];
$data['meta_description'] = $data['blog_info']['post_meta'];
$data['meta_keywords'] = $data['blog_info']['post_tags'];
//view
$data['main_content'] = 'blog_details';
$this->load->view('include/template',$data);
}
我的模型是
public function get_posts($slug = FALSE, $limit = TRUE, $offset = FALSE){
if($limit){
$this->db->limit($limit, $offset);
}
if($slug === FALSE){
$this->db->order_by('blogs.post_id', 'DESC');
$this->db->join('category', 'category.category_name = blogs.category');
$query = $this->db->get('blogs');
return $query->result_array();
}
$query = $this->db->get_where('blogs', array('post_slug' => $slug));
return $query->row_array();
}
如何使用帖子名称创建上一个和下一个帖子链接?提前致谢。
【问题讨论】:
-
如果 limit 和 offset 是布尔类型的值,那么你怎么能期望 limit 子句起作用呢?
empty()在保证变量存在时是不合适的。
标签: php mysql codeigniter codeigniter-3 blogs