Dreamweaverテンプレートを使ったサイトの更新で、テンプレート(DWTファイル)を更新したら、全ページ文字化けしてしまいました。
文字化けの原因は文字コードが変わってしまったため
更新されたファイルの文字コードを調べてみると、本来UTF-8だった文字コードが、シフトJISになっています。
DWTファイルもUTF-8なのに、なぜ?
文字化けしたファイルを修正する
- テキストエディタ「Emeditor」で文字コードを「日本語シフトJIS」指定して開きます。
- 「名前を付けて保存」から、文字コードに正しい文字コード「UTF-8(BOM無し)」を指定して、上書き保存します。
- Webブラウザで開いて確認します。
これで、ファイルは正常に開けるようになりました。
原因と対策
Webサイト全体のHTMLやDWTをHTML5で記述しており、<head>での文字コードを
<meta charset=”utf-8″ />
と記述しています。しかし、Dreamweaver CS4では、UTF-8と認識できず、Shift-JISとして認識してしまったようです。
そのため、DWTのファイル更新処理で、間違った文字コードで開いた文字化けコードで更新してしまいます。
回避するには、DWTの
<meta charset=”utf-8″ />
の前に、
<!–TemplateBeginIf cond=”0″ –>
<meta http-equiv=“Content-Type” content=“text/html; charset=UTF-8” />
<!–TemplateEndIf –>
というコードを追加しましょう。
まとめ
万が一に備えて、DWT更新前のバックアップを取っておきましょう。
※最新ver(CCなど)では、この現象は解消されています。