gpt4 book ai didi

php - 使用 CodeIgniter 查询 WordPress 博客

转载 作者:行者123 更新时间:2023-11-30 23:06:33 25 4
gpt4 key购买 nike

我终于尝试了一些 CodeIgniter,但我目前被困住了。

新闻模型

public function get_news($slug = FALSE){
if($slug === FALSE){
// if there is no slug specified, pull all records from the 'wp_posts' table
$this->db->select('post_title, post_content, post_name');
$this->db->where('post_status', 'published');
$this->db->where('post_type', 'post');
$this->db->order_by("post_date", "desc");
$this->db->order_by("post_title", "asc");
$query = $this->db->get('wp_posts');

var_dump($query);

// return the resulting array
return $query->result_array();
}else{
// if it does exist, pull only the record(s) specified where column 'slug' = the parameter
$this->db->select('post_title, post_content, post_name');
$query = $this->db->get_where('wp_posts', array('post_name' => $slug));
// return the resulting array
return $query->row_array();
}
}

Controller

class News extends CI_Controller{

public function __construct(){
parent::__construct();
// located @ /application/models/news_model.php
$this->load->model('news_model');
}

// pull in all news items
public function index(){
$data['news'] = $this->news_model->get_news();
// give the page a title
$data['title'] = 'Articles Archive';
$data['c_year'] = date('Y');
// Load the header template
$this->load->view('templates/header', $data);
// Load the page
$this->load->view('news/index', $data);
// Load the footer template
$this->load->view('templates/footer', $data);
}

// pull in only the news item(s) where the slug matches
public function view($slug){
$data['news_item'] = $this->news_model->get_news($slug);
// give the page a title
$data['title'] = $data['news_item']['title'];
$data['c_year'] = date('Y');
// Load the header template
$this->load->view('templates/header', $data);
// Load the page
$this->load->view('news/view', $data);
// Load the footer template
$this->load->view('templates/footer', $data);
}

}

与数据库的连接正常,但在我看来,我只返回 show_404();,因为没有 记录。

直接对数据库运行类似的查询确实会返回我的所有记录。

这是 var_dump 的结果:

object(CI_DB_mysql_result)#18 (8) { 
["conn_id"]=> resource(3) of type (mysql link persistent)
["result_id"]=> resource(4) of type (mysql result)
["result_array"]=> array(0) { }
["result_object"]=> array(0) { }
["custom_result_object"]=> array(0) { }
["current_row"]=> int(0) ["num_rows"]=> int(0)
["row_data"]=> NULL
}

我在这里做错了什么?

最佳答案

更改:$this->db->where('post_status', 'published');

到:$this->db->where('post_status', 'publish');

问题已经解决了……漫长的一周……

关于php - 使用 CodeIgniter 查询 WordPress 博客,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21636725/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com