Dreamwerver で Smarty

Macromedia-Dreamweaver.gif
Dreamwerver上でSmartyを扱いたい。

求める機能は以下4点。
・TPLファイルを関連付けさせる
・ヘッダーなどの<{include file="○○.tpl"}>を、デザインビュー上できちんと表示させる
・独自デリミタ(<{~}>)に対応させる
・CSSやJavascriptの読み込みに対応させ、画像もデザインビュー上で表示させる

いろいろ探したのだが、各方法一長一短。
どうにも設定が反映されないことも多く、半日以上右往左往_|\●_
3つの方法を組み合わせつつ、やっとこさまぁまぁの環境を実現。。
以下メモ。。。


■手順1■
まずは、Macromedia Extension Managerを使って以下のエクステンションをインストール。
DreamweaverでSmarty テンプレートをイケてる感じで編集しよう。
エクステンションなので簡単にインストールできます(感謝☆)。
こちらで以下の機能は実現。
・TPLファイルを関連付けさせる
・ヘッダーなどの<{include file="○○.tpl"}>を、デザインビュー上できちんと表示させる
(*デリミタが初期設定({~})ならば、ここでそれも対応解決)

■手順2■
独自デリミタ(<{~}>)へ対応させる為に、
以下サイトより dreamweaver_smartytags.zip をダウンロード。
Smarty Dreamwerver

展開後、smarty.xml のデリミタ指定っぽい箇所を適宜修正。
そしてDreamwerverのインストールフォルダ内、Configuration\ThirdPartyTags へ突っ込む。

一応私のsmarty.xmlファイルを、以下へアップロードしておきました。
ファイルをダウンロード

■手順3■
Smartyではtplファイルと実際の公開ファイルとのディレクトリが違うため、
CSSやJavascript、それに画像などのパスも通らない。
Windowsのシンボリックリンクを使用することでその問題を解決する。

– 手順3.1 –
まずは Windows Server 2003 Resource Kit Tools をダウンロード。
インストールはせず、中から linkd.exe だけを抜き出し、
Windowsのコマンドとしてパスの通ったフォルダ、C:\WINDOWS\system32 なんかに放る。
参考→linkd.exeを使ってCドライブの空き容量を増やす

– 手順3.2 –
コマンドプロンプトを立ち上げ、シンボリックリンクを作成する以下のコマンドを実行。

linkd (仮想側パス) (実際のパス)

つまり、

linkd (tplファイルのフォルダパス) (CSSなどの通したいファイルがあるフォルダパス)

という感じでしょうか。。
参考→Windowsでシンボリックリンク

私の場合は、CSSやJavascriptなどを置く_incフォルダと、画像を置く_imgフォルダを、
tplファイルのあるフォルダへ以下のコマンドにてシンボリックリンクさせた。

linkd F:\maakikaku.jp\smarty\tpl\_inc F:\maakikaku.jp\www\_inc
linkd F:\maakikaku.jp\smarty\tpl\_img F:\maakikaku.jp\www\_img

以上3手順にて、やっとこんな感じのデザインビューを実現しました。。
070607.gif

おつかれさまでした。。

1件のコメント

  1. ピンバック: Kemworld::Diary

コメントする

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です