CodeIgniter Template Kütüphanesi | Parser Class ile Temel Kullanım

Haz 14, 2019
php framework codeigniter template codeigniter parser codeigniter template kütüphanesi codeigniter view yapısı codeigniter mvc php codeigniter template codeigniter dinamik tema codeigniter parser class codeigniter örnek
CodeIgniter Template Kütüphanesi | Parser Class ile Temel Kullanım

Başka frameworklerde var olan bir durum malesef codeigniter da bulunmamakta ve bu çok büyük bir eksiklik değil. Aslında template(şema) oluşturmanın temeli bulunuyor. Bu classın adı parser. Parser classı aracılığıyla dinamik temamızı oluşturabiliriz. İlk olarak size en temelini anlatıp sonra Parser classını kullanmayı göstereceğim. Temel yapıyı MVC yi frameworksüz kullananlar belkide daha önce düşünmüşlerdir.

Temelde amaç bir view dosyasında bütün verilerin akacağı bir yapı oluşturmaktır. Örnek olarak kodlar şu şekilde:

View dosyası "template.php":

                        <?php echo $title ?>                     load -> view('navigation'); ?>         load -> view('footer'); ?>

controller dosyası "Main.php":

public function index(){         $data=array(base_url('assets/css/extra.css'),                                      base_url('assets/css/custom.css')),                    'extraJS'=>array(base_url('assets/js/anasayfa.js'),                                     'https//baskabirsite.com/assets/js/ornek.js'),                    'title'=>'Anasayfa',                    'metaTags'=>array('',                                      ''));        $this->load->view('template',data);}

en temelde bu şekilde bir kod düzeni veya model kullanarak daha da kendinize yönelik bir durum oluşturabilirsiniz.

Gelelim Parser classını nasıl kullanacağımıza:

controller fonksiyonunuzun içinde aşağıdaki yapıyı koyarak dataları temaya uygun yapabilirsiniz.:

$this->load->library('parser');$data = array(        'blog_title'   => 'My Blog Title',        'blog_heading' => 'My Blog Heading',        'blog_entries' => array(                array('title' => 'Title 1', 'body' => 'Body 1'),                array('title' => 'Title 2', 'body' => 'Body 2'),                array('title' => 'Title 3', 'body' => 'Body 3'),                array('title' => 'Title 4', 'body' => 'Body 4'),                array('title' => 'Title 5', 'body' => 'Body 5')        ));$this->parser->parse('blog_template', $data);

view dosyasıda şu şekilde olmalı:

                        {blog_title}                                

{blog_heading}

{blog_entries}
{title}

{body}

{/blog_entries}

 


Bertuğ Fahri Özer
Bertuğ Fahri Özer
super user

captcha