3バカ兄弟の日常

世界一周情報、フィリピンセブ島ブログ。2年1ヶ月の世界一周情報とセブ島情報、語学留学情報を!

BOM付きでfunctions.phpがエラーで真っ白になるのはUTF-8コードだった

http://3bakayottu.com

Wordpress関連

BOM付きでfunctions.phpがエラーで真っ白になるのはUTF-8コードだった

投稿日:2016-02-23 更新日:

ロリポップ!のプランをモジュール版phpにして、喜んでいたのもつかの間・・・・。

 

さて、ブログの過去記事の修正でもしよっかな♪

と思っていつもどおり「更新」キーを押下したら・・・。

 

予期せぬエラーが!!

スポンサーリンク

アドセンス 記事下

functions.phpを編集で変な改行、スペースをいれるとコードエラーでエラー表示されて、画面が真っ白になり、Wordpressが表示されなくなる!?

え!!Wordpressのテーマの編集でfunctions.phpをいじってるとよくある

 

画面が真っ白でエラー表示されてなにもできなくなる問題!?

これとほぼ似たような現象でした。

これってみんな最初のうちに経験しますよね?

ボクも初めてなった時は

「壊れた!!!Wordpress!!」

ってパニックになりました。

 

functions.phpはテーマの機能の中枢を担っているので、編集する時は必ず「Terapad」などのテキストエディタにバックアップを取ってから編集しましょう!

ボクはそんな事は露知らず

 

これからガツガツいじって自分のブログかっこよくするんだ!!

といじって、「エラー表示で画面真っ白」でWordpressの自分のページが開かずに焦りました(笑)

ネットで同じような症状を調べたら、めっちゃたくさん同じことが・・・・。

 

必ず、テーマ編集を行う時はバックアップを取ってからCSS、htmlカスタマイズしましょう!

あぁ・・・もう遅い。エラー表示された・・・。

その時はプラグイン「BackWPup」でバックアップを取っていたため、functions.phpファイルをFTPソフトのffftpで戻して元に戻りました♪

 

functions.phpは改行、スペースを余分にいれるだけでもエラーで吹っ飛ぶのでいじる時は必ずバックアップを取りましょうね!

で、今回は「ロリポップ!のモジュール版phpをONにしただけ」なのに同じように画面真っ白になったので????状態でした

 

 

「Cannot modify header information – headers already sent・・・・・・・・・」と表示されて画面が真っ白になりました・・・functions.phpいじってないんだけど・・・。

functions.phpはいじってないがエラー表示。

一応バックアップが手元にあったのでffftpで戻して、再度「更新」キーを押下しても同じくエラー

 

あれ!?functions.phpのエラーのはずなのに治らない!?

ボクの使っているStinger5がモジュール版phpに合わないのか・・・。

これはロリポップ! のモジュール版phpが使えないのか!?

 

いや、そんな事はないはず。

ちょっと調べてみよう!

ってことでググってみたら、かなりレアなケースだがあった・・・・(笑)

 

 

functions.phpをUTF-8の「BOM」ありで保存するとエラー表示で真っ白になる!!

「Stinger5 Cannot modify header information – headers already sent・・・・・・・・・」

でググってたら、英語のページがよく出ること(笑)

 

検索結果としてはStinger5は関係ないが、どうもfunctions.phpのエラーが関係していることは英語でいっぱい書かれていた・・・。

ただ日本語の同現象の人は少ないが・・・・。

 

ちょっと違うけど同じエラーが出ているな・・・。

と試しにこのブログ主と同じことをやってみたら・・・。

参考ブログ

 

まるっきし同じエラーがでましたよ!!

 

「更新」キーを押下でエラー、「アイキャッチ画像のメディアライブラリに何も表示されない」、プラグインの有効/無効でエラー表示される

現象としては

  • 投稿の編集画面で「更新」キー押下でエラー
  • 投稿の編集画面から「アイキャッチ画像を設定」に進むと、メディアライブラリに何も表示されない
  • プラグインの設定画面で有効または無効にするとエラー

ほぼ同現象となった・・・(笑)

この方のブログに原因と対策が書いてあったので実施してみよう!

 

WordPressでは「UTF-8」の文字コードが使われているが、BOMあり、BOMなしの2種類がある!!

Wordpress TeraPad UTF-8 BOMありなしボクは普段CSS,PHPファイルをいじる時にTeraPadを使っているが、ファイル>文字/改行コードを指定保存で選択できた!

 

今まで文字コードなんて全然気にせずにいじっていたが、WordpressはUTF-8コードで

 

しかもUTF-8には「BOMあり」、「BOMなし」があると。

まずBOMって何??から始まりますよね?

BOMとは

バイトオーダーマーク (byte order mark) あるいはバイト順マーク(バイトじゅんマーク)は通称BOM(ボム)といわれる、Unicodeの符号化形式で符号化したテキストの先頭につける数バイトのデータのことである。このデータを元にUnicodeで符号化されていることおよび符号化の種類の判別に使用する。

引用:Wikipedeia

つまりUTF-8の場合、16進数表記で先頭に「0xEF 0xBB 0xBF」のコードが書かれている場合、BOMありとなる。

WordPressの場合、UTF-8コードでBOMなしにしなければならない。

 

つまり「BOMあり」でfunctions.phpを保存しているとエラー表示されるってことだね!!

 

 

functions.phpにBOMが付いているかどうか、バイナリエディターで確認する

じゃあ実際functions.phpにBOMが付いているのかどうかどうやって確認するのか?

バイナリーエディターでfunctions.phpを開くことで確認することができます!

バイナリーエディターはVectorなどのフリーソフトでダウンロードできるのでダウンロードしてね♪

ボクはVectorで「Stirling 1.31」ってソフトで開きました。

 

BOMありの場合のfunctions.php

Wordpress TeraPad UTF-8 BOMあり

「BOMあり」でfunctions.phpが保存されている場合、

バイナリーエディター Stirlingで開いたときに青○で囲ってある部分に「EF BB BF」がある!

 

BOMなしの場合のfunctions.php

Wordpress TeraPad UTF-8 BOMなし

「BOMなし」でfunctions.phpが保存されている場合、

バイナリーエディター Stirlingで開いたときに青○で囲ってある部分に「EF BB BF」がない!!

 

 

UTF-8のBOMがエラーの原因だった! BOMなしにするにはどうしたらいい?

原因は「BOMあり」でFunctions.phpが保存されていることだったと判明。

じゃぁ「BOMなし」にすればいい?

 

どうやって「BOM」を消せれるのか?

 

TeraPadの場合、保存時に「UTF-8N」を選択してやればよい!

ボクは「TeraPad」を使っているのでその説明になってしまいますが。

テキストエディターはVectorなどでフリーソフトであるので、ダウンロードしてきてね♪もちろん「TeraPad」もあります。

 

Wordpress TeraPad UTF-8 BOMありなしクリックで画像拡大できるよ!

functions.phpをTeraPadで開き、ファイルを保存しなおしてやればOK!

  • UTF-8:BOM付き
  • UTF-8N:BOMなし

ファイル>文字/改行コードを指定保存で「UTF-8N」に指定して、保存すれば「BOMなし」になります。

 

また今後の事も考えるのであれば

表示>オプション>文字コードで保存文字コードを「UTF-8N」にしておけば毎回指定せずとも、「UTF-8N(BOMなし)」で保存してくれます!

 

あとはffftpなどのFTPソフトでファイルをWordpressのThemaフォルダにアップロードして、既存のfunctions.phpファイルと置き換える、上書きしてやればOK!

 

 

今回モジュール版PHPにしたことによってなぜPHPエラーがでたのか?

ロリポップ FTPあぁ!!ここが原因!?

 

今まで何も問題がなかったのに、なぜ今回ロリポップのモジュール版PHPに変更したことによってエラーがでた!?

 

謎だ!!(笑) だが原因はBOMありでなしにしたら治りました!!

ただ、どこでBOMありにしたのだろう・・・と思って、そういえば最初の頃はロリポップのFTPサーバーでファイルいじってたなっと思い、見てみると・・・。

 

FTPで保存形式が「UTF-8」しかない!!

が、これが原因なのかははっきりわからないが。

 

これからCSS、HTMLをいじってテーマカスタマイズするのはTeraPadでちゃんとやろう。

たまに面倒でWordpressの「テーマ編集」で子テーマいじって表示がおかしくなるならまだいいが、functions.phpいじるのは怖いし(笑)

 

もうロリポップ上のFTPでテーマファイルの編集はやらないでおこうと誓った日でした♪

 

スポンサーリンク

アドセンス 記事下

アドセンス 記事下

ブログ村

海外生活ブログ セブ島情報でセブ島情報、世界一周情報満載の人気ブログがみれます!

関連アドセンス PC

こんな記事も読まれています♪

Wordpressおすすめ環境!

ボクは無料ブログからWordpressに引っ越して2年経ちましたが、ブログを書くならWordpressがカスタマイズから使いやすさ、検索の強さでは一番優れている!

そんなボクがおすすめするWordpressの構築する環境を!

ドメインはムームードメイン

ボクも使っているドメイン取得サイト「ムームードメイン」

時々キャンペーンをやっていて人気ドメインが99円からなんてのもある!

取得方法も簡単、探すのも簡単、そしてWordpressへの設置も代表的なサーバーには簡単にできるし、ボクはムームードメインでずっとお世話になっています♪

レンタルサーバーはエックスサーバー

最初はレンタルサーバーは安くてどこでも変わりないんじゃない?とボクも思っていました。

そうしてロリポップのWordpressがインストールできるプランにしたら・・・ブログのページ表示スピードが遅すぎ!!

その点エックスサーバーは1,000円/月からで安定した速度、安定した運用してくれる!

もう使いやすさ、SSL対応、速度、サポートといい初めからエックスサーバーにしとけばよかった・・・。

だいたいブログ書いている人はエックスサーバー使っている人が多いのも頷けます!

WordpressテンプレートはAFFINGER4

ボクが今使っているWordpressテーマの「AFFINGER4」

動画背景でかっこいいサイトが作れるのはもちろんの事、CSS、htmlなど苦手な人でも管理画面、カスタマイザーで簡単に自分だけのおしゃんてぃーなサイト、ブログが作れるのがスゴイ!!

もちろんStingerシリーズからSEOに強くて、今回ボクもAFFINGER4に変えたら検索順位更に上昇したからスゴイっす!!

外観だけでなく、細部にまでこだわった造りが最高です!

この記事が気に入ったら
いいね!しよう

最新情報をお届けします

@yottu33をフォロー

-Wordpress関連
-, ,

Copyright© 3バカ兄弟の日常 , 2016 AllRights Reserved.