htmlのたたき台を作るのにsmartyを使ってみてます。

使用時間、2時間くらい・・・。

※ローカルでちょっとだけつかうつもりで書いたので、かなりあぶない気がする。

<?php
require('Smarty.class.php');

$smarty = new Smarty;

$smarty->template_dir = './smarty_templates';
$smarty->compile_dir = './smarty_templates_c/';
$smarty->config_dir = './smarty_configs/';
$smarty->cache_dir = './smarty_cache/';

$pi = trim($_SERVER['PATH_INFO'], '/');

$tpl = explode('.', $pi);
$tpl = $tpl[0]. '.tpl' ;

if($tpl == '.tpl') {
$tpl = 'index.tpl';
}

$smarty->display($tpl);
?>

hoge.php かなんかで保存して、http://localhost/hoge.php/index.html とかやると、template_dir の中の index.tpl が表示される。foo.tpl を作ってtemplate_dirに放り込んでから /hoge.php/foo.html にアクセスすると foo.tpl が表示される。らくちん。

一人だと、Dreamweaver のテンプレやライブラリ使うより Smarty でごりごりやったほうが楽だわ。php の動くwebサーバーを立てなきゃいけないってのはあるけど、 xampp インストールすりゃ終わるし、テンプレ書いてリロードすりゃいいだけだし。

あんまし Dreamweaverのプレビューはいまのところ必要ない(CS3でどうなるかなぁ)し、いつもブラウザでリロードしまくるので、Dreamweaverでテンプレ変更→ファイルに反映→ブラウザでリロードってやるところの、「ファイルに反映」がなくなるぶん、楽になった。

最初のうちは、html の id class 付けやら div 囲いの変更やらで、いじりまわすことが多いから、なるべく共通部分は1つにまとめといたほうがめんどっちくない。テンプレん中で他のテンプレ呼べるし({include file=”header.tpl”} とか)、ファイルと一緒に変数渡せたりするから、構造同じだけど、ページごとに微妙に違うときも楽ちん。

Flash ばっかりやってたから、 html でのサイト作成のフローがまだ固まってない。css にいたってはジェンガになっちゃうし・・・。なんとかせんとなぁ。

  • http://ma2ma2.com/ まに

    たいしてコード量減るわけでもないですが、PHPの関数をご紹介です。上記コードをちょっぴし代替出来ます。PHPの場合、もともとWeb用に特化して世の中に生まれた背景があるので、こういった関数が標準でそろってるところが、PHPらしいですよね。

    http://www.php.net/manual/ja/ref.url.php

  • http://ma2ma2.com/ まに

    たいしてコード量減るわけでもないですが、PHPの関数をご紹介です。上記コードをちょっぴし代替出来ます。PHPの場合、もともとWeb用に特化して世の中に生まれた背景があるので、こういった関数が標準でそろってるところが、PHPらしいですよね。

    http://www.php.net/manual/ja/ref.url.php

  • hideh

    まにさん

    ありがとうございますー。
    ちょっと見たところ pathinfo () なんかもつかえそうですね。

  • hideh

    まにさん

    ありがとうございますー。
    ちょっと見たところ pathinfo () なんかもつかえそうですね。