Dreamweaverのテンプレートタグ
<!-- TemplateBeginEditable name="" --> <!-- TemplateEndIf --><!-- InstanceBeginEditable name="" -->
<!-- InstanceEndEditable -->
コーダーには、見慣れたタグですが、、、
あるリニューアル作業をしていて、
恐ろしい落とし穴にハマりました。
2回もハマったので、悔しすぎて、二度とハマるまじと、書置きします(;´`)=3
まず、↓これが、.dwtという拡張子でTempatesフォルダに格納されている、
テンプレートファイル。
これをもとにページを増産し、一括編集を可能としています。
<!-- TemplateBeginEditable name="" -->
<!-- TemplateEndIf -->
そして、↓作られたhtmlページに、挿入される、
ここからここまでが編集可能領域だよ、のタグ。
このタグに囲まれた部分しか、各htmlは、編集できません。
(ただし、DW以外のソフトで開いてたら、どこでも編集できちゃいます、これ当たり前)
<!-- InstanceBeginEditable name="" -->
<!-- InstanceEndEditable -->
DWを使っていれば、上記のことは、イヤでも従えるルールなのですが、
DW以外のソフト、秀丸、メモ帳、さくらエディタなどでいじっていると、
.dwtのテンプレートファイルも力は発揮しませんし、
各htmlファイルも、どこからどこまでが共通で、どこからどこまで触ってもいいのか、素人目にはわかりません。
私が遭った恐ろしいワナは、
.dwtファイルではないのに、(htmlファイルなのに)
<!-- TemplateBeginEditable name="" -->
<!-- TemplateEndIf -->
が記述されているhtmlファイルをDWで編集していたときのこと。
(なぜ記述されちゃっていたかと言うと、
おそらくお客様側で、DW以外のソフトで、
.dwtファイルのソースをコピペして作成したページだったのでしょう。。。)
「テンプレートファイルをもとにページを増産」とは、
.dwtのソースをコピペすることではないですよ!!(T ^ T)
(って、このブログで叫んだところで、これを読んで下さっている方は、重々ご承知のことと思います。。。)
htmlファイルに、
<!--TemplateBeginEditable name="" -->
<!-- TemplateEndIf -->が書かれちゃってるのに編集してしまい、まして、上書きしようとするとどうなるか??
想像してみてください。
「テンプレートとして保存しますか?」
のダイアログが出てきます。
うっかりあまり見ないままenterなんか押したりすれば、
そのとき作成済みのホンモノのXXX.dwtに、
中途半端なhtmlファイルの内容が上書きされちゃうんです。Σ( ̄ロ ̄lll)
もちろん、閉じているファイルを上書きしちゃうわけですから、
historyで戻れたりする希望もありません。
一瞬にして、消えます。
なので、
くれぐれも、
.dwt以外のファイルに、
<!-- TemplateBeginEditable name="" -->
<!-- TemplateEndIf -->
の記述がないように、
目をこらしてチェックしておかなければなりません。
P.S.横着をしなければ、
こんな目にあうことも、ないのかもしれませんが。。。