WordPressでゲームブック投稿サイト運営してますけど、白い画面に悩まされたときはググりまくって対処できました!
筆者はWordPressでゲームブック投稿サイトGameBook.xyzを運営してますが、
先日、テーマと呼ばれる画面装飾データの更新を行い、併せてアクセスカウンタ表記の反映を手動で行っていたら、突然画面が真っ白になり、管理画面にも入れなくなってしまいました。
筆者の脳裏には走馬灯のように
「ああ。せっかくGoogle先生にもキーワード『ゲームブック』で大体2位になるように今まで頑張ってきたのに」とか
「投稿者の皆さんのデータが吹っ飛んだらどうしよう!?」と
思いが交錯し、途方に暮れました。
もちろんバックアップデータはサーバーに置かれたファイルもデータベースも定期的にローカル環境にも保存していますが管理画面も反応がなくて絶望に打ちひしがれました。
どうしよう? そうだ。そんな時こそGoogle先生だ! ロゴも刷新したばかりじゃないか(関係ない) ググりまくればなんとかなる!(かも)
焦燥に駆られながら筆者はひたすらキーボードを叩きまくりました。
まあ、正直いろいろな記事がヒットするんですけど、あらゆる記事を見ながら少しずつ情報を収集し、つなぎあわせて自分でも考えてようやく快方へと向いました。
まず、WordPressで白い画面はエラーが発生していると。
そこがポイントですね。じゃあエラーメッセージを見られるようにしたいと。
そんなときは
define('WP_DEBUG', false);を
define('WP_DEBUG', true);に
書き換えてね!
とか書いてあるんだけど、そもそも「define('WP_DEBUG', false);」 って書いてあるファイルが見つからねぇ……。
そうです。ここで気づいたんですが別になければ作ればいいんです。
define('WP_DEBUG', true);をどっかのファイルに書けばいいんですよ!
ファイルは「wp-config.php」か「wp-settings.php」あたりで良いみたいです。
この辺もね~。簡単に書いてますけどブログしかやってない人はチンプンカンプンでしょうね。
WordPressはPHPと呼ばれる言語で書かれています。「.php」と表記されたテキストファイルみたいなモンで出来ていて、それはプログラマーの意図に即して変貌し、ブラウザにはHTMLファイルの様に認識されてホームページが表示されています。
と言うような事がわからないと意味通じないでしょうね。例えばブラウザで「ソースを表示する」とやってもPHPファイルを見ることは出来なくて、WordPressの管理画面とか、サーバーにアクセスして直接ファイルを見るとかしないと分かんないんですよね。
まあ気を取り直して「wp-settings.php」ファイルに「define('WP_DEBUG', true);」と入力して上書き保存しました。
すると、上手いことエラーが表示されて、サイトも表示されるようになったのです。
もちろん管理画面にも入れるようになったのでまずは一安心。
エラーが5,6種類くらい出ていたのですが、どうやら一つのプラグインとアクセスカウンタ表記に関わることに問題があることが判明しました。
いっその事プラグインは削除しようかとも思いましたが、それだと綺麗にエラーを取り除けるか何となく不安だったので、まずはアクセスカウンタ表記をどうにかすることにしました。
すると、何てことはない事で躓いていることがわかりました。
PHPって表記の方法として
<?php
コード
?>
と言うように「<?php」と「?>」で囲うんですけど、終わりの「?>」が何故かありませんでした。
そればかりか「<?php」と「?>」の組み合わせが上手く入り子になっておらず、そのために単純エラーが発していることも判明したので余計なものを削除しました。
上記2点を直すだけで、アクセスカウンタに関するエラーがなくなりました。
となれば、管理画面で問題児のプラグインを停止すれば解決するかも……と思いたち、そのようにすると見事復旧しましたッ!
感動しましたね。Google先生を頼りに自力で解決したことは自信がつきましたね。
最悪すべてのデータを再度アップロードし直しかと覚悟していたのですが、テーマの更新とアクセスカウンタの表記も良好なので、全て上手く行った形で終了です。
良かった……。何とかなるもんだ。
自分の思い描いたようにホームページやプログラムが動いてくれるというのはとても楽しいものですね。
かつてマイコンベーシックマガジンと言うゲーム投稿雑誌にBASICと呼ばれるパソコン黎明期のプログラミング言語でクソゲー作っては投稿していた過去をちょっと思い出しましたね。
ベーマガをご存知の方いらっしゃいますかね。イベントが開催されるようですよ。もっともチケットは既に完売していますが……。
以上、北海道からでした。