Seo tools

Neo Inspiration

  • Search

    • About Me

      • inspi 改め
        jakk@webアーキテクト(自称)
        php,javascript,seoなど
        得意技は extract();



  • Categories

  • Ranking

  • Comments

  • Others


  • Smarty と cakePHP 適当メモ

    インストール方法はおいておいて(ぉぃ
    とりあえず使い方とかだけ若干はまったのでメモしておく


    *Controller系
    ○既存のSmartyだと

    //変数のアサインはこう
    $smarty->assign(’変数名’, ‘出力データ’);

    //表示はこう
    $smarty->display(’対象のテンプレパス’);

    ○cakePHPに入ると

       //変数のアサインはこう
    $this->set(’変数名’,'出力データ’);
    //表示は$this->set() で同時に行うから意識しないでOK

    *View系

       //表示は既存のSmartyになる
    {$変数名} の形式

    cakePHP部分での拡張も存在
    ・htmlヘルパーが使用可能

        -> htmlヘルパーについてはリファレンスを参照
    http://cakephp.jp/doc/helpers.html#id4808750

    なお<?php $html->*** ?> という使い方ではなく
    {$html->**} というSmarty流の書き方になります。

    ・Elementが使用可能

        -> Elementの使いかたもりふぁれん(ry
    http://cakephp.jp/doc/views.html#id4808257

    これも同様に<?php $this->renderElement(’**’) ?> という使い方ではなく
    {$this->renderElement(’**’)} というSmarty流の書き方になります。

    *Element ではコントローラでセットした値がそのまま使えます
    こんなかんじ。

    //Contoroller

    class TestsController extends AppController
    {
    var $uses = “DB”;

    function index(){
    $this->set(’element_a’,'エレメントAにはこれが表示’);
    $this->set(’element_b’,'エレメントAにはこれが表示’);
    $this->set(’index_a’,'インデックスにはこれが表示’);
    }
    }

    //View

    //index.tpl
    <body>
    //エレメントAを表示
    {$this->renderElement(’element_a’)}

    {’index_a’} //インデックスにはこれが表示

    //エレメントBを表示
    {$this->renderElement(’element_b’)}
    </body>

    //element_a.tpl
    <body>
    <hr>
    <b>ここがエレメントA</b>
    {’element_a’} //エレメントAにはこれが表示
    <hr>
    </body>

    //element_b.tpl
    <body>
    <hr>
    <b>ここがエレメントB</b>
    {’element_b’} //エレメントBにはこれが表示
    <hr>
    </body>

    Smarty流のアサインをしないとヘルパーが使えないのに若干ハマッタのでメモ
    どうでもいいけど wordpress でインデントの方法教えてください。。。


    One Response to “Smarty と cakePHP 適当メモ”

    1. links for 2008-06-19 « test Says:

      [...] Neo Inspiration » Smarty と cakePHP 適当メモ paginationのelementの使い方分からん。ここで閃いた。{$this->renderElement(’pagination’,$paging)}って書けばええねん。 (tags: cakephp smarty pagination) [...]

    Leave a Reply

    2008/11/22 09:44:44