トラブル

Fatal error: 'break' not in the 'loop' or 'switch' context

更新日:

思わず、

「暗号かよっ!!」

って、突っ込んでしまいそうなフレーズです。

これを何とか自力解決したお話です。

ある日、WordPressのテーマを新規に追加して有効化したら管理画面が表示されず、タイトルのような

「Fatal error: 'break' not in the 'loop' or 'switch' context in /home/〇〇〇/be-free.jp/public_html/wp-content/themes/テーマ名/admin/theme-options.php on line 1819」

とだけ表示されるシュールな画面になりました。

管理画面にすらならないので、お手上げです。。。

そんな時は、そう!

「教えて!グーグル先生!」です!

PHPのエラー?!

とりあえず出てきたページを片っ端から見てみますと、どうやらPHPのバージョンを変更するとなることが多いみたいです。

その他にも特定のプラグインによってなるとか。

今回の場合は特定のテーマをインストールして有効化しちゃったってのが原因ですね。

参考にさせていただいたサイト様には

「swichやwhile文で使うべきbreakがif文などにあるとこのエラーが出ます。PHP5系まではそのまま通ってしまいます。」

と、書いてありましたがPHPの知識のない自分には、これすらも暗号です。。。

ただ、とりあえずエラーメッセージにある

「theme-options.php on line 1819」

という記述からこの「theme-options.php」というphpファイルの1819行目に問題があるということが推測できました。

ここに一縷の希望が見えてきました!

ただ問題は管理画面にすらならないので、phpファイルを直接編集しなければならないことです。。。できるのか?!自分。。。

恐る恐るphpファイルを直接いじる

FTPソフトを起動して該当のphpファイルを開きます。

何行目かわからないので、全部コピーしてTerapadに貼り付けて1819行目辺りを確認します。

そうするとそのあたりに「if」から始まって「break」で終わる構文?みたいのがあったので、ググって得た知識でこれをコメントアウトしました。

そしてF5でサイト更新してみると!

「Parse error: syntax error, unexpected '}', expecting end of file in /home/〇〇〇/be-free.jp/public_html/wp-content/themes/テーマ名/admin/theme-options.php on line 1964」

無情にも同じような状態です。

内容が少し変わりましたが、やはりどこかにエラーがあるよー的な内容です。

今度は1964行目に「Parse error: syntax error,」ってのがあるらしい。

今度もググって参考にさせていただいたサイト様には

「Parse error: syntax error…」というエラーメッセージが表示される場合、その原因のほとんどが、プログラムの入力ミスです。簡単に解決できる場合もありますが、エラーメッセージの行番号に惑わされて解決が遅れることもあります。」

と書いてありました。

(´・ω・`)ショボーン

どうやら先ほどのコメントアウトとやらがいけなかったようです・・・

さてどうしたものか。。。

 

 

そうだ!閃いた!

 

良い子のみなさんはマネしないでくださいね。

やりたいことはとりあえず管理画面を表示して、

元凶であるテーマを削除することです。

ということはとりあえず、レイアウトが崩れようが何しようが管理画面さえ表示できればいいやと考えたのです。

そこですでにインストールされている他のテーマの「theme-options.php」を丸ごとコピーして入れ替えてみました。

F5でサイト更新すると!!

無事に表示されました~^^

ちょっとレイアウト崩れていたけど無問題です。

悪さをしたテーマは速攻削除です!

まぁ結果オーライでしたけど、かなりの力業だったかなとも思いますです(;^_^A アセアセ・・・

一応やる前に元の「theme-options.php」はバックアップしておきましたけどね。

もしこれを見て試してみようと思った方は、完全自己責任でお願いいたします。m( __ __ )m

-トラブル
-, , , ,

Copyright© 限りなく完璧に近い自由 , 2019 All Rights Reserved.