公開日:

ブログのテーマがバグってトイレで吐いた件、サーバーのバックアップも絶対に取りましょう。【LION BLOG×エックスサーバー】

ブログのテーマがバグってトイレで吐いた件、サーバーのバックアップも絶対に取りましょう。【LION BLOG×エックスサーバー】

私の使っているテーマがぶっ壊れて死にそうになりました。

先ほどまで私のこのブログはサイトとして見るに堪えない状況にまで陥っていたんです。

そんな惨劇に会ってしまったので、動悸と息切れが激しく悪寒が止まりませんでした。

挙句の果てに吐き気が収まらなくて実際にトイレで吐きました。

もう頭はパニック状態、どうしたらいいか分からない状態です。

以前にもテーマがバグったことがあるんですけど、前回の比じゃないほどワードプレスがおかしくなりました。

前回テーマがバグった記事はこちらです。

ブログがバグったああああ!皆さん「バックアップ」は取りましょう。

バックアッププラグイン?そんなの使ってますよ。

実際前回バグったブログは、バックアッププラグイン『UpdraftPlus』を使うことによって直すことができました。

それじゃ対処できない事態が起きたんです。

バックアップからの復元を試しても全く直らなかったんですよ!!

だから吐いたんです。

ライオンブログ(LION BLOG)のテーマがバグった理由と原因

ブログがバグった理由は簡単です。

テーマのコードを変更したからです。

私のブログには記事の公開日しか表示されていないので、記事の更新日を表示させたかったんです。

記事を大量にリライトする予定でしたので、この機会に更新日を表示させたいと思ったんですよね。

更新日を表示させることによってSEO的にも有利ですし、ユーザーにとってもGoogleで検索する際に最新の情報の方がクリックされやすくなります。

だから調べました。

プラグインが良かったんですけど、良さそうなプラグインがなかったんですよ。

そもそもテーマ自体を変更させるので、それぞれのテーマに会ったプラグインが存在しないのかもしれません。

それでphpのコードを変更することにしました。

そう自分でも簡単にできるんじゃね?と思ってしまったんです・・・

更新日を表示させる方法はテーマごとに違っていて探すのは大変でした。

LION BLOGの記事に更新日を表示させる

そしてやっと自分の使っているテーマで更新日を表示させる記事を発見しました。

こちらです。

LION BLOGでブログ記事の更新日を表示するカスタマイズ

こちらで「親テーマのsingle.phpにコードを追加する」と書かれていたので実際やってみたんですよ。

「外観」から「テーマの編集」へ行って、

「編集するテーマを選択」を「親テーマ」にしてから「選択」を押す。

そうしましたら「テーマファイル一覧」や「スタイルシート(CSS)」が表示されます。

で変更したいファイルを選んだら「phpコード」が表示されます。

コード一覧から挿入する箇所を探しあてて、更新日を表示させる「phpコード」を追加します。

この一連の流れ簡単に見えるでしょ?

やった人ならわかると思うんですが、始めてだと全く分からない。

解説してくれる人も、画像付きで詳しく教えている訳ではありませんから全部手探りです。

ここまで到達するのにもかなりの時間を要しました。

この苦労を経てやっとこさ「phpコード」を挿入したわけですよ。

しかし!

自分のブログを見てみるとバグっています。

記事の公開日あたりにphpコードがそのまま表示されて、かなりおかしな状況になっています。

5回ほど試しましたが、どうもうまく適応されません。まあこんなの軽微なバグです。

テーマの編集のテーマファイルに戻って「Ctrl+Z」で、挿入したphpコードを削除し元の状態に戻すだけです。

この時ちょっといい気になっていましたね。

このぐらいのバグなら自分でも簡単に直せると。

どうしてうまく表示されないのか少し悩み、参考にしたブログにさらに詳しいリンク記事を発見しました。

それがこちらです。

LION MEDIAをカスタマイズしてWordPressブログの更新日時を表示させる

こちらの方がめちゃくちゃ詳しいです。

「phpファイル」の変更の仕方から具体的な方法まで画像付きで解説してあります。

相当無駄な時間を費やしてしまいました。

おい!Googleのボケがあああ!初めからこっちを検索の上位に表示させろや糞が!

と心の中で叫びましたが、Google様の検索ではよくあることなので仕方ありません。

しかしこの詳しい解説を見てもうまくできません。

そして私は思いつきます。テーマを更新していないからコードが適用されないんだと。

テーマを更新するたびにブログがバグってしまう現象が起きてしまうので、テーマの更新は一切やっていなかったんですよ。

実際に私のブログのphpコードを見てみると、参考にしているブログのphpコードは少し違っていました。

で今回最新のテーマがうまく適応されない理由を詳しく調べました。

親テーマを正常に適応させ、更新させる

LION BLOGの親テーマを正常に更新させるために色々調べました。

でやっとこそさ詳しいサイトを見つけることができました。

それがこちらです。

LION BLOGアップデートで変になった表示を直す方法

おお!以前自分が更新した際にバグった状況と全く一緒です。

どれどれ「親テーマのcontent.cssが読み込まれていないことが原因」ということですね。

私はLION BLOGの子テーマを使いテーマのカスタマイズをしています。

その子テーマのバージョンが古く、親テーマがうまく適応されていないということでした。

よし!LION BLOGの公式ページに行って、子テーマのphp情報を書き換えればいいんだな。と考えました。

うん公式ページに重要なお知らせがありましたよ。

【重要】子テーマのfunction.php修正のお知らせ

この子テーマを修正させれば、きちんと最新の親テーマも反映されるとこの時は思っていました・・・

そして「外観」から「テーマの編集」に行き「子テーマ(LION BLOG Child)」を選択し「テーマのための関数(function.php)」のテーマファイルを公式のphpデータと同じように修正しました。

ワードプレス編集画面が盛大にぶっ壊れる

これが最大の過ちです。

このときは、どうせ失敗しても親テーマを変更したように軽度なバグになるだろうと考えていました。

そしてどうせバグっても以前直した様に『UpdraftPlus』で簡単に元の情報に戻せるだろうと・・・

で実際どうなったかと言うと盛大にバグりました。

私のブログが正常に表示されなくなった(書式や画像の大きさ、スタイルまで崩壊、phpコードがそのまま表示される)だけではなく、

ワードプレスの編集画面までphpコードで汚染され、編集自体が正常に行えなくなってしまったのです。

かなり焦りましたが、まだ慌てる時間じゃない。

私には『UpdraftPlus』というバックアップから復元するプラグインが付いています。

しかもphpコードを変更する際に、バックアップを取ことは常識なので事前にバックアップをとっています。

今の私に抜かりはない。バックアップの復元をすればすぐに元通りになるはずです。

だが!

バックアップの復元を試すと「不明なエラー、サーバーを確認してください。」というような表示が現れます。

悪寒が走ります。

何回もバックアップからの復元を試します。

赤いウインドウが出て「失敗した」という内容が表示されるのみ。

失敗する度に悪寒と共に動悸、息切れが激しくなります。

そしてバックアップからの復元では直せないことが分かると、突如吐き気が襲ってきました。

喫茶店で作業していましたので、そこのトイレで吐きました。

バックアップから復元できないものはないと信じていた私にとっては、

凄まじい衝撃でまさに青天の霹靂でした。


テーマを直した方法

トイレで吐いた後は少し冷静になり(動悸と息切れはまだ激しいまま)どうすれば治るのか必死に考えました。

そしてすこし落ち着いた私は、変更した「子テーマ」を元の正常な状態に戻そうと試みました。

しかし変更した「function.php」はすでに「Ctrl+Z」では戻せない状況になっていたのです。

変更する前のphpデータを他のファイルに残せばよかったのですが、

バックアッププラグインでどうせ直せるだろうという慢心があり、保存することはありませんでした。

戻せないならどうするか、LION BLOGの公式ページから壊れていない子テーマをダウンロードして適応するしかないと考えました。

カスタマイズした子テーマを破棄するのは苦しいが、そんなことは言っていられない状況です。

そして子テーマをダウンロードして適応させようと試みました・・・

「サーバーに何らかの問題が発生しています。テーマを変更できません。」

ぐにゃあああ~~~

カイジ並みに画面が歪みましたよ。

サーバーまで影響しているのは分かっていましたが、ここまでひどい状況だとは思いませんでした。

また吐き気が襲ってきます。

絶望した私は、直るはずもないバックアップからの復元や子テーマの変更を繰り返します。

どうしようもなくなった私は、前の考えに戻り変更した「function.php」を元通りの状態に直すしかないという結論に至ります。

サーバーをおかしくしている「子テーマ」のデータを手動でどうにかするしかないと。

そこからの行動は早かったです。

まずはLION BLOGの公式ホームページに行き過去のバージョンの子テーマを探しましが、過去のバージョンを発見することはできず。

なら自宅のデスクトップにインストールした子テーマが残っているかもしれない!と思い全速力で帰りました。

・以下自宅で行ったこと

子テーマの変更はできなかったが、php情報を書き換えることはできることに気づく。

過去のファイルをあさり無事発見。

phpファイルの開き方が分からないので検索。

Google Chromeでphpデータを見ることができるという情報を発見。

旧バージョンの子テーマ「function.php」を無事見ることに成功。

バグの元凶であった「function.php」の書き換えに無事成功。

やったあああああああああああ!

直ったあああああああああ!

以上がバックアップでも直せないほど盛大にバグった、ワードプレスを直した経緯です。

ちなみにブログ記事に更新日を表示させることは断念しました。

今回の事件でかなりの恐怖を私に植え付けましたからね。

追記:更新日の表示を打開しました。

phpコードを挿入して公開日と更新日を入れる事に成功しました。

タイトルの上に公開日と更新日がきちんと表示されています。

ただタイトルの下にも公開日が二重に表示されていますが、これはご愛敬ということで。

私の技術ではこれが精いっぱいです。

一応色はシルバーにしまして、あまり目立たないようにしています。

参考にしましたサイト様はこちらです。

<h1>タグの手前に上記コードをまるっと追加すると、記事タイトルの前に表示を追加することができます。」

引用元:最終更新日をWordPressの記事に表示させる方法。SEOにも有効!

この一文によってどこにコードを挿入するのかが、とても分かりやすかったです。

ここで御礼申し上げます。

お詫び

このワードプレスが汚染され、バグった状況をスクショで撮っておけばよかったとは思うのですが、

実際そのような状況に陥ると、すさまじくテンパります。

冷静にスクショなんて撮ってなどいられません。

また同じ過ちを試せば、同じ状況を作り出すことができ、

ワードプレス編集画面がどのようにバグったかなど、エラーの内容のスクショを撮影することはできます。

同じことをして直せばいい話なのですが、そんな度胸は今の私には無く、また違った問題が発生した場合また吐くことになるでしょう。

スクショを残せなかったことが悔やまれます。

追記

バグったワードプレスの編集画面が、普段使っていないブラウザのキャッシュ情報で残っておりました。

こんな感じです。

いやー編集画面がバグるとマジで焦りますよ。

他にも恐ろしいバグはあったのですが、残っていた情報はこれだけです。

他には「読み込みが凄まじく遅い」「画面を切り替える度に謎のウインドウが出る」などの症状が出ました。

テーマのコードは絶対にいじらない

あなたがプログラミング言語について詳しくなければ絶対に触ってはいけません。

テーマのphpコード?CSSコード?そんなの私は知りませんよ。

ただ他のサイトを見て自分でできそうだったからやって見た。

その挙句がこのザマです。

そんな気軽な考えで試すものではないんですよ。

バックアップの保存をしているから大丈夫だって?

保存しているデータを復元できなかったらどうするんですか?

その慢心が私と同じような過ちを犯すきっかけになるんです。

追記:phpコードについては打開済みです。詳しくなくても学べばいいんです。以前は絶対に触るなと言っていましたが、考えが変わりました。失敗を恐れていては成長も前進もしませんから。

サーバーのバックアップ、復元【エックスサーバー】

皆さんバックアップをとったからと言って安心しないでください。

バックアッププラグインでも直せないこともあるんですよ。

サーバー自体にバックアップを取った方がいいかもしれません。

というか絶対に取ってください。

あなたの使っているサーバーにバックアップ機能が付いていなかったら、有料だとしてもつけてください。

サーバー自体にバックアップ機能が付いていなければ、サーバーを変えてください。

あなたのサイトがバグって消滅しても誰も責任は取ってくれません。

私はエックスサーバーを使っているのですが、自動バックアップ機能が標準でついています。

今回このような散々な目に会いましたので詳しく調べました。

エックスサーバー自動バックアップ

データのバックアップについて

サーバー上のデータは、1日1回、バックアップ専用サーバーに自動でコピーしており、全サーバープランともサーバー領域のWeb・メールデータ「過去7日分」、MySQLデータベース「過去14日分」のデータを保持しています。

バックアップデータの提供について

誤って重要なデータが消失してしまった場合などには、バックアップデータの提供も行っていますので、復旧用のデータなどとしてご活用ください。

手数料
バックアップデータの提供の際には、下記の通りデータ提供1回ごとに手数料が必要です。

  • サーバー領域データ … ご指定の日のWeb・メールデータ(税込10,800円)
  • MySQLデータベース … ご指定の日の特定のデータベース1つ(税込5,400円)

参照元:エックスサーバー自動バックアップ

エックスサーバーでは一日一回バックアップの保存をしております。

その保存期間は「サーバー領域データ(すべてのデータ)」が一週間分。

「MySQLデータベース(サイト別のデータ)」が二週間分保存されています。

二週間以上経ってしまったらバックアップデータは消えてしまうので、サイトに異変があったら早急に対処してください。

そして注意書きとして、すべてのデータの確実な保存を保証するわけではないと書かれていますのでこの点にもご注意ください。

さらに上記の様にバックアップデータの提供にも、手数料が別途発生します。

今回はこの手段を用いることはありませんでしたが、費用が掛かりますので本当に最終手段です。

しかし最終手段が残っていることが、とても大切なことなんです。

こちらにバックアップからの復元方法が書かれています。

レンタルサーバーによってバックアップ機能が標準装備されていない

レンタルサーバーによってバックアップ機能が契約と同時に備わっていない所が多々あります。

例えば有名なロリポップ!はサーバー代は安いものの、バックアップには別途月額の料金がかかります。

さくらのレンタルサーバはバックアップ作業がとても面倒です。あらかじめ設定しなければバックアップはされません。

契約したサーバーのグレードによってバックアップされないものもあります。

しかしエックスサーバーですと契約と同時に自動バックアップ機能が付いてきます。もちろん月額は無料です。

最悪の事態に陥っても、サイトを復元できる手段はとって置くべきです。

私は面倒な手間や費用が掛からないエックスサーバーをおすすめしますので、どうぞ参考にしてください。

最後に

この件で深く深く反省しましたので、バックアップを残す様々な手段や復元方法を詳しく調べました。

みなさんも絶対にブラグインのバックアップだけで安心してはいけません。

自分のサイトが不幸な目に合わないように、サイトを保存する方法をいくつか知っておくべきでしょう。

プラグインでの保存、復元」「サーバー機能での保存、復元」「サーバーデータを自分のパソコンや他のサーバーに保存する方法」などです。

いつ何が起こるか分かりませんので、自分のサイトやブログを守るためにも自衛手段は複数持つことが賢明です。