トップページ > ホームページ作成 > Smartyの使い方
テンプレートエンジンのSmartyの使い方をお教えします。レンタルサーバーの「ロリポップ」では、実は最初からSmartyがインストールされています。
Smartyとは
Smartyは、PHPでつかえるテンプレートエンジンです。うまく使うとホームページのデザインと内容のファイルを分離でき、ホームページ作成が効率化されます。Smartyがインストールされていない場合でも、Smarty Template Engineより、smartyをダウンロードし、それを解凍して適当な場所に置き、include_pathを設定することで簡単に利用できます。
Smartyには、日本語訳のマニュアルがあります。詳しくはSmarty(暫定) マニュアルをご確認下さい。
Smartyをつかったテンプレートのサンプル
テンプレートに必要なファイル・ディレクトリは、次の通りです。
- テンプレートを実行する「phpファイル」
- テンプレートになる「tplファイル」
- 「tplファイル」を格納するディレクトリ
「templates」という名前で、「phpファイル」を置くディレクトリの下に作る - コンパイル済みテンプレート格納ディレクトリ
「templates_c」という名前で、「phpファイル」を置くディレクトリの下に作る
パーミッション(属性)は、(777)にしないと、エラーになる
一度テンプレートが実行されるとコンパイルされたファイルがここに自動的に作られる
「tplファイル」の例
テンプレートファイルの例です。ここでは、「スクリプトから取得した値:」の次に「phpファイル」で指定する「$value」の内容を表示する簡単なものです。これを応用すれば自分の定義した表示デザインで、いろいろな内容を統一して表示することが出来ます。
ファイル名は、「smarty_test.tpl」です。
<html>
<head>
<title>Smartyのテスト</title>
</head>
<body>
スクリプトから取得した値:{$value}
</body>
</html>
「phpファイル」の例
テンプレートファイルを利用する「phpファイル」の例です。「$value」の内容と利用する「tplファイル」を指定します。
ファイル名は、「smarty_test.php」です。
<?php
require_once("/usr/local/lib/php/Smarty/Smarty.class.php");
$smarty = new Smarty();
$smarty -> assign("value","こんにちは");
$smarty -> display("smarty_test.tpl");
?>
「/usr/local/lib/php/Smarty/」の部分は、「require_once("Smarty.class.php");」だけではエラーになりましたので、付け加えました。
「smarty_test.php」をウエブブラウザから実行して、次が表示されれば成功です。
レンタルサーバーの「ロリポップ」では、動作確認しております。
スクリプトから取得した値:こんにちは
Amazon.co.jpアソシエイト:PHP&プログラミング
:%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%20php :php2_ :3