2015/10/06

ブログが真っ白!エラー原因は全角・閉じ忘れ・親子テーマの競合!?2通りの復元方法&今後の対策!!

WordPress初エラー:大自然の大きな木の下で女性が爽やかな笑顔で手を広げている

functions.phpでエラーを出すとブログや投稿画面が真っ白になります。解析エラー:構文エラーが出たとき、よくある原因と復元方法を記してます。

てっとり早いのが、バックアップからの復元になります。エラー構文は変わりますけどsingle.phpや、.htaccessなどのエラーからの復元も同じです。

  • single.phpでエラーが出たら、ブログのホーム画面は正常に表示されるけど、各投稿ページのみ真っ白でエラーコードされる。
  • .htaccessのエラーは、ブログも管理画面も真っ白でエラーコードが表示される。

時短をお考えでしたら目次でジャンプしてくださいね。

スポンサーリンク

functions.phpでエラーコードが出たときの状態

【 Parse error: syntax error, unexpected $end in・・・on line 276 】【解析エラー:構文エラー、予期しない$エンド ライン276】は、functions.phpの276行目くらいでエラーが出たと言うエラーコードです。

真っ白で上部にはエラーコードが出ています。

翻訳

解析エラー:構文エラー、予期しない$エンドライン276

原文

エラーの文面。Parse error: syntax error, unexpected $end in /home/users/数字/サーバーアカウント/web/ドメイン/wp-content/themes/stinger5テーマのバージョン/functions.php on line 27

戻るボタンで戻ったら→いつものfunctions.phpの画面に戻ってちょっと安心してラッキーな気分になります。が!!

おかしくなった原因のコードをサクッっと削除後『ファイルを更新』をポチっ・・。ファイルの編集に成功しましたとなるはずが・・残念また下記▼画像。この画面真っ白になっちゃいます!

エラーの文面。Parse error: syntax error, unexpected $end in /home/users/数字/サーバーアカウント/web/ドメイン/wp-content/themes/stinger5テーマのバージョン/functions.php on line 27

ものは試しで、『ダッシュボード』から『functions.php』画面に入れるか!?

エラーの文面。Parse error: syntax error, unexpected $end in /home/users/数字/サーバーアカウント/web/ドメイン/wp-content/themes/stinger5テーマのバージョン/functions.php on line 27

ダメ、入れません。エラーコードと、真っ白画面のみっ。ついでに、公開中のブログも訪門したら、やっぱり・・同じエラー画面。。

エラーコードの表示・非表示設定があるサーバーもある

エラーの表示・非表示がの設定ができるphp.iniがサーバーによってはあります。

参考phpエラーで個人情報が丸見えに!!phpエラーコードを非表示にする方法♪表示される設定も参考にどうぞっ♪

でない場合は、wp_config.phpを触って、エラーを表示したい場合も当然あります。焦る気持ちは、分かりますけどそれより慎重に直して行くべきですので落ち着いて見ていきましょう。

元に戻す方法:バックアップからの復元

日ごろからバックアップ、しっかりとってますか?一度もとった事がなければ、この方法は無理なので(後述)を試しましょう♪

サーバーのFTPと、WordPressのPHP編集画面は、全く同じファイルがあります。WordPressで編集したファイルは、サーバーと同期してるって思ってください。

ダッシュボードからfunctions.phpを、元に戻せないので、バックアップのfunctions.phpファイルをFTPで選択して、アップロードすれば元に戻せます。

パスは:/あなたのドメイン(/public_html)/wp-content/themes/エラー起こしたテーマ/該当ファイル.php

アップロード方法

そのファイルを選択してPC側から→サーバー側に復元アップロードするだけで簡単に出来ます。

 

ポイント♪

ここでは、同一ディレクトリ(▲画像)でなければ意味がないので、慎重に見て確認後、アップロードしてくださいねっ。あたふたしてもミスを招くだけですので、落ち着いてやりましょう♪

LINKWordPress初心者向けバックアップデータのファイル復元!データベースのインポート方法

元に戻す方法:サーバーFTPを開き、直接functions.phpを直接触って戻す

バックアップを、長い事(一度も)取ってない場合の方法です。

サーバーFTPへ直接入ってエラー出した時に間違えた記載をエラー前の状態に元に戻したり、書き替えたり出来ます。(サーバーのFTPに入る権限がないと入れません。)

※エックスサーバーなら、ファイルマネージャーからログイン

ロリポップなら、リリポップFTPからログイン

サーバーのFTPのディレクトリは、FTPソフトと同じです。FTPソフトの右側は、サーバー内部そのもので、左側はPC側のパス(バックアップなど)ですね。

ドメイン/(public_html)/wp-content→themes→エラー出したテーマ、と進んでその下層に「functions.phpファイル」があります、※下記画像はSutinger5のファイル

ルートの1つ下の階層にfunctions.phpファイル発見。

復元方法は、簡易バックアップからの復元、またはエラーの内容を確認して追記部分を削除する

サーバーFTPのfunctions.php開いてみた画像エラー画面を青く反転

書き足してエラーを出したコードを消して、エラーが出る前の状態に戻すだけです。絶対間違えないようにっ!これっ、めちゃくちゃ重要です。

ポイント♪

簡易バックアップとして、ファイルのコードを全部コピーして、メモ帳などにでも貼り付ける。再度エラーが出たら、簡易バックアップを貼り付けるとエラー前の状態に戻せますよねっ。

LINK簡易的なバックアップ方法!初心者用WordPressファイル内の説明

エラーでバックアップからの復元できたら、最後に保存を押してください。

サーバーFTPのfunctions.php開いてみた画像。エラー出たコードを削除後、保存する画面

そしたら、簡単♪即、元通ーりっ!と、復元できます。正しく戻せたらWordPressの管理画面にも入れ、ブログも復活できました。

次は、何でエラーが出たのか!

エラーの原因で考えられる事とは何!?

functions.phpで、よくあるエラーをあげますね。

スペースが入ってしまった。

原因はスペースが入ってしまってた事に気付かず、エラーが出てしまった。

正しくは下記。入れてはいけない所に、スペース入ってませんか?

テキストエディタを使ってると、空白が入る場合があるので注意が必要ですね。

※まさかスペースが関係しているとは知らず、コードの照会しか出来てなかった当時の私…。ツイッターから皆さんに助けてもらい最終的に、ametama_l2lあめたまさんに解明してもらいました^^

LINKエローラさん、あめたまさん、かみじょーさん、杉成就さん、おくたにさん、sachikoさん♪困ってる時メッセージくれたり、エラー直してくれるお手伝いして頂きまして、ありがとうございました!前編

閉じ忘れ、波括弧}

phpって、{ これは、ここからですよぉ

} ココまでですよぉ!

って記載するんですよねっ。}閉じ忘れてませんか!?下記を見てください。

大括弧 } これ、忘れたら構文が成り立ちません。。正しくは、下記。

phpが「どこまでなのぉ~!?」っと、閉じカッコ}を探した挙句、「ダメだぁ~、処理できない!」と、悲鳴をあげて真っ白になった。と思えばわかりやすいです。正しくコードを書かないと、エラーを起こします。

半角全角、コロン:とセミコロン;の間違い

全角文字を入れるとエラーを起こします。半角文字を入れてください。

  • return null;←終わりのセミコロン;
  • 半角;セミコロンが、全角;セミコロン
  • ;セミコロンが、:コロン

半角全角は区別され、functions.phpで間違うと、完全に飛びます。CSSも、さいごに;セミコロンを打ってないと、正常に動いてくれませんよね。

真っ白から戻してあげれば復活しますけど、慎重に扱わないといけないですねっ。

functions.phpのエラーから、復活までの手順:まちがった箇所がわかってる時

ここまでで、PHPエラーは何で出たのかザックリわかりました。次は、エラーを起こして復活するまでの流れを書いておきますねっ。

functions.phpエラー発生から復活までの手順

  1. } else { ここから
    return get_the_modified_time($format);
    ●←ココに}波括弧を入れ忘れてる。
  2. 気付かずにファイルを更新
  3. WordPress管理画面やブログが真っ白。
  4. サーバーのFTPに向かう。(FFFTPでの復元は前述の通り)
    ドメイン/(public_html)/wp-content/themes/使ってるテーマ/Gush4-Child/functions.php

 

  • 抜けてる半角波括弧}を閉じ忘れた箇所に入れて、保存
  • 投稿画面に戻って、使ってたブラウザを更新すれば、何事もなかったかのように編集を続けられる。
  • ブログも復活しますよっ♪

親テーマ、子テーマとの競合

以前パンくずリストを付けたくて使ってるテーマGush4の子テーマに貼り付けると、即functions.phpのエラーで真っ白になりました。

親テーマと同じ記載を書いたから競合したのです。親テーマを見てみたら、同じ内容がありました。ご確認してみてくださいね^^

親テーマ:functions.php

//パンくずリスト
難しい関数が沢山ゴニョゴニョ・・

原因は、同じ記載を子テーマにも書いたからエラー

  • 子テーマ使ってる人は親テーマは普段見ないので注意!
  • 同じ記載をすれば競合する

またプラグイン同士でエラーを起こし真っ白になる事もありますが、参考まで。

LINKプラグインが競合!ブログを簡単に表示させる為の3つ対処方法

関数自体の間違い

phpを適当に集めコードを組み合わせた結果、真っ白!phpのコードを間違ったら、正常に動かないので、エラーが出るので、WordPressの関数リファレンスを参考にしてください。

PHPに限らず、.htaccessなども同じです。触る前にバックアップとりましょう!

それから気になるのが、原文って何を書いてるかです。

Parse error: syntax error, unexpected $end in ・・・このエラーの意味って何?

Parse error: syntax error, unexpected $end in /home/users/数字/サーバーアカウント/web/ドメイン/wp-content/themes/テーマ名とバージョン/functions.php on line 276

更に日本語化されたエラー表示も同様。

解析エラー:構文エラー、予期しない$エンド
/home/users/数字/サーバーアカウント/web/ドメイン/wp-content/themes/テーマ名とバージョン/functions.php
オンライン276

文字/を見てもらったら わかるように、そこにはルート以下サブディレクトリが並んでます。下記は分かりやすくしたもの。

ドメイン/wp-content/themes/テーマ名とバージョン/functions.php

FTPを開いて、この通りのパスで下層へ向うと、迷わないです。

結局はPHPの構文エラーなので、半角スペースや、タグの閉め忘れ等などあるまま、ファイルを更新したから、エラーコードに書かれたパスの通りのファイルを修正してくださいね。

さいごに

エラーを出す前に、バックアップをとって、出たら復元してください。まだFTPを使った事がないなら、設定をどうぞ。

LINKFFFTPの初期設定★マスターパスワード設定、困った時の設定説明

エラーコードを出せば、どこにエラーが出たかわかります。

LINKWordPress初心者でも、真っ白になったブログを元の画面に戻せるページ!エラーコードを表示させる2つの方法

大事なのは、やっている事を認識してphpなどを触る。ブログのバックアップさえあればどうにかなりますが、困ったときはサーバーに問い合わせてみるもの手ですね。

WordPress初心者であっても関係なくエラーが出るので注意してくださいねっ。phpのコードは難しいですっ!

31記事目でエラーを出した、かうたっくでした♪

書いた人:かうたっく

何も知らない初心者ですが、WordPressでブログを始めました。 ブログの技術系でつまずいたエラーを経験したことからエラー関連を、初心者が初心者に向けて分かりやすい言葉で書いてます★子どもの喘息様気管支炎や、幼い子どもとの生活ページなどよく読まれる雑多ブログを運営中^^♪ご意見、感想、質問はお問い合せよりお待ちしています。

Twitterフォロー