codeigniterでプロジェクト全体のデフォルトのテンプレート/レイアウトを実装する方法を教えてもらえますか?
私が見つけた1つの方法は、Code Igniter(CIフォーラム)を使用したテンプレートです。
他に方法はありますか?誰でも完全なサンプルコードを投稿できますか?
codeigniterでプロジェクト全体のデフォルトのテンプレート/レイアウトを実装する方法を教えてもらえますか?
私が見つけた1つの方法は、Code Igniter(CIフォーラム)を使用したテンプレートです。
他に方法はありますか?誰でも完全なサンプルコードを投稿できますか?
1つのレイアウトビューを作成します。このようなもの:
<html>
<head>
<title>My awesome site</title>
</head>
<body>
<?= $this->load->view('shared/header') ?>
<?= $this->load->view($partial) ?>
<?= $this->load->view('shared/footer') ?>
</body>
</html>
次に、コントローラーでこれを行います。
$this->data['partial'] = 'pages/index';
$this->load->view('layout/layout', $this->data);
MY_Controllerファイルがある場合は、そこにメソッドを作成できます。
function load_view($partial)
{
$this->data['partial'] = $partial;
$this->load->view('layout/layout', $this->data);
}
次に、MY_Controllerから継承するコントローラーで、次を使用できます。
$this->load_view('pages/index'); // pages/index will be loaded in the layout
そのうちの1つを知っているいくつかの方法は、サイト/プロジェクトのヘッダービューとフッタービューを作成することです。
application/views/template/header.php
application/views/template/footer.php
次に、他のページを希望どおりに配置します。
application/views/users/login.php
あなたのコントローラーであなたはこのようなことをするでしょう
<?php
class Blah extends CI_Controller
{
public function __construct()
{
parent::__construct();
}
public function index()
{
$this->load->view('template/header');
$this->load->view('users/login');
$this->load->view('template/footer');
}
}
私が偶然見つけた便利な小さなテンプレートライブラリもあります。これにより、これがさらに簡単になります。ただし、他の方法で入力するほど柔軟ではありません。
http://maestric.com/doc/php/codeigniter_template
編集::テンプレートのサンプルコードをいくつか指定する必要があるので、ここに移動します
header.php
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Lovely Title</title>
</head>
<body>
<h1>Check This Out!!1!</h1>
<div class="container">
footer.php
</div>
</body>
</html>