WordPressの文字コード(UTF-8)と改行コード(LF)

UTF-8

WordPress のテーマ制作やカスタマイズ時に見落としがちなのが、文字コードと改行コードです。正しく設定されていないと、文字化けや意図していない余白が出るなどのエラーが起きてしまいます。

テキストエディタの文字コード・改行コードは以下のとおり設定しましょう。

  • 文字コード:UTF-8(BOM なし)
  • 改行コード:LF

UTF-8 は「BOM あり」と「BOM なし」の 2 種類があるので気をつけてください。

文字コードとは

文字コードとは、コンピュータなどの電子媒体において、文章を画像などの図形データとしてではなくテキストの形式で扱う場合に、その各文字(単一の文字でない場合もある)に対して持っている符号(コード)のことである。

文字コード(Wikipedia)

文字コードとは、文字に割り振られた固有の番号のことです。

コンピュータはその番号をもとに「あいうえお」など人が読める文字に変換して表示しています。

日本語の Web サイトでは「Shift_JIS」「UTF-8」「EUC-JP」のいずれかが使われており、WordPress は「UTF-8」が標準となっています。

WordPress 3.5 から UTF-8 がデフォルトになり、管理画面から変更できなくなりました。

このため、テーマ制作やカスタマイズにおいて「Shift_JIS」でファイルを作ってしまうと文字化けやエラーが出てしまいます。

文字コードをどこで設定するのか

HTML では、<head> 内で文字コードを指定します。

指定しなかった場合はブラウザが自動的に判別してくれますが、文字化けを避けるために必ず指定しておいたほうがよいでしょう。

<meta charset="utf-8">

WordPress のテーマ制作やカスタマイズでコードを書く場合、テキストエディタの文字コードも「UTF-8」に設定しなければなりません。

たとえば、「Notepad++」というエディターでは「エンコード」から文字コードを指定できます。

Notepad++ エンコード

「UTF-8」と「UTF-8 BOM」の 2 種類がありますね。

エディターによって表記は異なりますが、WordPress で使うのは「BOM なし」のほうです。

たんに「UTF-8」と表示されていても、エディターごとに「BOM あり」か「BOM なし」か違ってきますので注意してください。

エディターBOM ありBOM なし
Windows メモ帳UTF-8(BOM 付き)UTF-8
TeraPadUTF-8UTF-8N
Notepad++UTF-8 BOMUTF-8
テキストエディターによる表示の違い

Windows 付属のメモ帳は「Windows10 19H1」より、「UTF-8(BOM なし)」が扱えるようになりました。

UTF-8は「BOMあり」「BOMなし」の2種類がある

BOM とは Byte Order Mark の略で、「これは Unicode で書かれたファイルである」というのを明示するデータのことです。

UTF-8 ならどちらでもよさそうに思うかもしれませんが、WordPress では BOM があると functions.php が正常に動かないなど何らかのエラーを起こす原因となります。

テーマ制作者が文字コードを間違えることはないと思いますが、WordPress 初心者が子テーマのカスタマイズなどをするときは見落としがちな部分ですね。

「コードをコピペしたのに動きません」というご相談をいただいたとき、けっこうな確率で文字コードが間違っています。

BOMの有無を確認する方法

コードが正常に動かないなど不具合が出たときは、念のため BOM の有無を確認してみてください。

バイナリエディターで確認すると、「BOM あり」のファイルは先頭に「EF BB BF」という文字列があります。

utf-8

「BOM なし」ではその文字列がありません。

utf-8n

通常のテキストエディターでもファイルの文字コードを確認できます。

UTF-8 BOM ありのファイル

「BOM あり」になっていたら、「BOM なし」に変更しましょう。

UTF-8(BOMなし)に変更する方法

文字コードはテキストエディターで上書き保存して変更できます。

「Notepad++」は「エンコード」から簡単に変換できるので、変更後にファイルを上書き保存してください。

Notepad++ 文字コード変換

その他一般的なテキストエディターであれば、変換可能です。

改行コードは「LF」を使うのが無難

文字コードのほかに「改行コード」というのもあります。

標準の改行コードは OS によって変わりますが、WordPress では「LF」を指定しておくのが無難です。

Notepad++ は「編集」-「改行コード変換」で指定できるので、変換後ファイルを上書き保存してください。

Notepad++ 改行コード変換
Unix(LF)に変換する

テーマカスタマイズぐらいなら「CR LF」でもとくに不具合は出ないと思いますが、データベースを操作するときは「LF」以外だと不具合が発生する原因となるかもしれません。

まとめ

WordPress テーマ制作時・カスタマイズ時は、文字コード「UTF-8(BOMなし)」・改行コード「LF」に設定して作業しましょう。

文字コード違いが原因の不具合は気づきにくいところですが、頭の片隅に入れておくとどこかで役立つかもしれません。

それでは、また。

Naifix Limited

無料プレゼント

有料会員向けに配信していた「ブログのアクセス数を最大限に増やす SEO 施策」を今だけ無料でプレゼントしています。

Naifix 編集部

Web コンサルティング業務を中心に、サイト制作・コンテンツ販売・メディア運営代行業務を行っております。本ブログ(Naifix)では、おもにブログ初心者向けのノウハウを無料で配信しています。

執筆・監修 Direx Marketing, Inc.