httpとhttpsで、オプション領域で分岐するDreamweaverのテンプレート
こんなシチュエーションってないですか?
- 通常サイトはhttp://hogehoge.jp/
- カートはASP(https://ASPカート.jp/hogehoge/)
これだと、通常サイトの場合、CSSや画像ファイル、Java scriptはhttp://hogehoge.jp/にあればいいんですね。でも、カートに入れたときはhttps://ASPカート.jp/hogehoge/にないとダメです。
え?なんでダメかって?SSLだからです。ブラウザのアラートが気にならない人は別ですが。
これをDreamweaverでやろうとすると、解決方法は2つあります。
- テンプレートをhttpとhttpsの2つ分作る
- テンプレートでオプション領域を使って、1枚のテンプレートからhttpとhttpsの2つに分岐する
1でも2でも自由ですが、テンプレートを2つ用意するのって、なんだかダブルスタンダードでイヤンなテイストがしません?
ちうわけで、マスターのテンプレートからhttpとhttpsの2つに分岐する方法です。
Dreamweaverのテンプレートの分岐
HTMLのHEADの部分で、ドリな方ならおなじみの「オプション領域」を使って、読み込み先を変えるだけです。MTな人でも、タグを見ただけでだいたいわかっちゃうかも知れません。
<!-- TemplateParam name="ssl" type="boolean" value="false" -->
<!-- TemplateBeginMultipleIf -->
<!-- TemplateBeginIfClause cond="ssl == true" -->
<link href="https://ASPカート.jp/hogehoge/template/css/import_ssl.css" rel="stylesheet" type="text/css" media="screen,tv,projection,print" />
<!-- TemplateEndIfClause -->
<!-- TemplateBeginIfClause cond="ssl == false" -->
<link href="../template/css/import.css" rel="stylesheet" type="text/css" media="screen,tv,projection,print" />
<!-- TemplateEndIfClause -->
<!-- TemplateEndMultipleIf -->
オプション領域「ssl」のパラメータが、trueのときとfalseのときで、HEADで読み込ませる内容を分岐します。これを元に、ネストしたテンプレートを作れば、マスターテンプレートは1つで済みます。
今回はASPカートですが、共用SSLが使えるレンタルサーバーで、「お問い合わせフォームだけ共有SSLに対応したい」っていうシチュエーションでも使えますかね。デザイナー以外の方でも、オプション領域は要チェックなテクニックかと思います。