1

FuelPHP オンラインのテンプレートに関するチュートリアルはあまり見当たりません。公式ドキュメントのセクションでは、実際には何も説明されていません。

誰かが推奨できる例やチュートリアルはありますか?

4

2 に答える 2

3

FuelPHP にはテンプレートのようなものは実際にはありません。

ビューを「ページテンプレート」として設定できるようにするテンプレートコントローラーがあり、コントローラーアクションが終了すると自動的にレンダリングされます。

したがって、そのコントローラーのテンプレートは通常のビューです。セクションを渡すことは、別の View オブジェクト (ヘッダー ビューやフッター ビューなど) を含む可能性のある変数を渡すことと同じです。http://fuelphp.com/docs/general/views.htmlの「ネストされたビュー」の下に例があります。

より柔軟なシステムが必要な場合は、テーマ (複数)、テンプレート、パーシャル、テーマ フォールバック、中央ビュー フォルダーなどで動作する Theme クラスを確認する必要があります。

于 2013-08-31T23:22:48.920 に答える
2

Fuelphp Controller_Template の機能を使用するには、基本要素を含む template.php というデフォルト ビューを作成します。

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/html" xmlns="http://www.w3.org/1999/html" xmlns="http://www.w3.org/1999/html">
<head>
    <meta charset="utf-8">
    <title>Website<?php echo isset($title) ? ' - '.$title : ''; ?></title>
    <?php echo Asset::css('style.css'); ?>
    <?php echo Asset::js('global.js'); ?>
</head>
<body>
    <div id="header">
        <!-- Some code -->
    </div>
    <div class="container">
        <?php echo isset($content) ? $content : ''; ?>
        <hr/>
        <footer>
            <!-- Some code -->
        </footer>
    </div>
</body>
</html>

次に、ページのコントローラー (例: Controller_Home) で Controller_Template を拡張し、それらの変数を関数 before() に入れます。

class Controller_Home extends \Fuel\Core\Controller_Template
{
    public function before()
    {
        parent::before();
        $this->template->menu = 'home';
        $this->template->title = 'Home';
    }
}

次に、このコントローラー (例: index.php) でページを呼び出したい場合は、これを試してください。

public function action_index()
{
    $this->template->content = View::forge('home/index');
}

テンプレートとページ (ビュー) index.php が表示されます。

于 2013-10-03T15:16:28.863 に答える