Source

BlogCI / application / controllers / posts.php

Full commit
<?php

class Posts extends CI_Controller
{

    public function __construct()
    {
        parent::__construct();

        $this->output->enable_profiler(FALSE);
    }

    /**
     * index
     * 
     * Na index são listados todos os posts
     * 
     * @access public
     * @return void
     */
    public function index()
    {
        $this->load->model('posts_model');
        $this->load->helper('datas');

        $data = array();

        $data['view'] = 'posts/index';
        $data['posts'] = $this->posts_model->pegar_todos();

        $this->load->view('base', $data);
    }

    /**
     * post 
     *
     * Recebe uma URL amigável com o nome de um post
     * Exibe a página do post
     * 
     * @param string $url 
     * @access public
     * @return void
     */
    public function post($url)
    {
        $this->load->model('posts_model');
        $this->load->helper('datas');

        $data = array();

        $data['view'] = 'posts/post';
        $data['post'] = $this->posts_model->pegar_post_pela_url($url);

        if (! is_object($data['post'])) {
            redirect('/404');
        }

        $this->load->view('base', $data);
    }
}