freelance iş ilanları

CodeIgniter Dersleri – Template Yapısı

3 Mesajlar 1.021 Okunma
lstbozum
smsonayhizmeti

MertKoseoglu MertKoseoglu Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 12.07.2013
  • Yaş/Cinsiyet 28 / E
  • Meslek x
  • Konum Ankara
  • Ad Soyad M** K**
  • Mesajlar 659
  • Beğeniler 120 / 168
  • Ticaret 3, (%100)
CodeIgniter öğrenmeye yeni başladığım sıralarda template yapısına gerek duymamıştım fakat blog sistemi yazmaya karar verdiğimde ne kadar elzem bir ihtiyaç olduğunu anlamam uzun sürmedi. Birkaç döküman ve video taramasından sonra amacıma ulaştım. Bu konuda pek Türkçe kaynak olmamasından mütevellit blogumda paylaşmaya karar verdim. Olay şöyle ki;

Öncelikle kütüphanemizi oluşturalım. CodeIgniter dizininde libraries klasöründe “TempK” isminde bir PHP dosyası oluşturalım.

TempK

class tempK {

protected $CI;

public function __construct()
{
$this->CI =& get_instance();
}

public function get($temp, $data=null)
{

$data['header'] = $this->CI->load->view('template/header',$data,true);
$data['sidebar'] = $this->CI->load->view('template/sidebar',$data,true);
$data['content'] = $this->CI->load->view('content/'.$temp,$data,true);
$data['footer'] = $this->CI->load->view('template/footer',$data,true);
$this->CI->load->view('template/index',$data);


}

}

?>


Yukarıda yer alan kodlarımızda, template klasörümüzde bulunan header.php, sidebar.php, footer.php ve content klasöründe bulunan dosya ismi dinamik olan home.php dosyamıza veri gönderelim. En alt satırda da index.php dosyamızda gösterelim.

Template
View klasörümüzün içerisine Template isminde bir klasör daha oluşturalım ve içerisinde header.php, sidebar.php, footer.php ve index.php dosyaları oluşturalım.

Footer




Header







<?php echo $title; ?>



header

Sidebar





Index




echo $header;
echo $sidebar;
echo $content;
echo $footer;

?>

Content
Template yapımızda içerik kısmımızda yer alacak PHP dosyalarını oluşturalım. Ben, single.php ve home.php olarak iki farklı sayfa oluşturdum.
Home












Single











Controllers
Şimdi de controller için kodlarımızı yazalım. Template isminde bir PHP dosyası oluşturuyorum.


defined('BASEPATH') OR exit('No direct script access allowed');

class Template extends CI_Controller {
function __construct()
{
parent::__construct();
$this->load->library('tempK');
}

public function index()
{
$data['title'] ="Ben home başlığım.";
$data['a'] ="Ben home içeriğim.";
$this->tempK->get('home',$data);

}
public function single()
{
$data['title'] ="Ben single başlığım.";
$data['a'] = "Ben single içeriğim.";
$this->tempK->get('single',$data);

}

}

?>


Sonuç
Genel anlamda yapımız bu şekilde. template/index‘e ya da template/single adreslerine baktığımızda başarılı bir şekilde çalıştığını görebilirsiniz. Bu şekilde devam ettiğinizde temeli sağlam bir yapı çıkartabilirsiniz.

Paylaşın, sevin, mutlu olun.

Kaynak: http://www.mkoseoglu.com/codeigniter-template-yapisi
kohreg GrafikYazilim06

kişi bu mesajı beğendi.

wmaraci
reklam

GrafikYazilim06 GrafikYazilim06 WM Aracı Kullanıcı
  • Üyelik 01.06.2016
  • Yaş/Cinsiyet 41 / E
  • Meslek Grafiker, Yazılımcı
  • Konum Ankara
  • Ad Soyad A** K**
  • Mesajlar 188
  • Beğeniler 121 / 63
  • Ticaret 14, (%100)
Hocam emeğinize sağlık, kapsamlı ve güzel bir yazı, teşekkürler..
MertKoseoglu

kişi bu mesajı beğendi.

MertKoseoglu MertKoseoglu Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 12.07.2013
  • Yaş/Cinsiyet 28 / E
  • Meslek x
  • Konum Ankara
  • Ad Soyad M** K**
  • Mesajlar 659
  • Beğeniler 120 / 168
  • Ticaret 3, (%100)
Rica ederim, keyifli kodlamalar.
 

 

wmaraci
Konuyu toplam 1 kişi okuyor. (0 kullanıcı ve 1 misafir)
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al