パソコンを買うなら今!最新セール情報まとめ

バックアップなしでもOK!WordPressで削除した記事を復元する方法

バックアップなしでもOK!WordPressで削除した記事を復元する方法

間違って記事を削除してしまった。復元したいけどゴミ箱にも残ってないし、バックアップもとっていない。復元はもう無理・・・?

結論から言うと、記事を削除して(ゴミ箱にもない状態)から何日も経っていない場合、自分でバックアップをとっていなくても復元できる可能性が高いです!

今回は、WordPressで削除した記事を復元する方法をご紹介します。

先日、操作ミスで10記事(総文字数3万字超え)ほど削除してしまってガチで手が震えるほど焦ったのですが、今回ご紹介する方法により5分ほどで復元することができました!

この記事を読んでいるあなたもかなり焦っていることと思いますが、復元できる可能性があるので一旦深呼吸して落ち着きましょう・・・!

レンタルサーバーの自動バックアップを利用しよう!

削除した記事の復元方法についてネットで調べると、多くのサイトが「プラグインや手動でバックアップしたデータから復元する方法」を紹介しています。

そもそもバックアップをとっていない場合はその文字を見た時点で絶望ですよね(;´∀`)

でも大丈夫。自分でバックアップをとっていなくても、自動バックアップ機能があるレンタルサーバーをお使いなら、サーバーの管理画面から復元できる可能性があります!

記事の復元に必要なのは、復元したい時点の「画像データ」と「MySQL(DB)」です。たとえば、9月11日時点の画像データとMySQLがあれば、記事を9月11日時点の状態に戻すことができます。

注意

データの復元を行うと、その日の時点で存在しないデータは削除されます(例:9月12日に1記事作成→9月11日のデータで復元→9月12日に作成した記事は削除される)。

なお、画像データは「Webデータ(public_html)」のバックアップがあれば復元できます。

主要レンタルサーバーについて、WebデータやMySQLの自動バックアップ機能があるか調べてまとめてみたので参考にしてみてください。

WebデータMySQL料金
エックスサーバー過去14日分過去14日分無料
ConoHa WING過去14日分過去14日分無料
ロリポップ!過去7回分過去7回分330円/月
さくらのレンタルサーバ8個8個無料
mixhost過去14日分過去14日分無料
※料金は税込み

なお、ロリポップ!とさくらのレンタルサーバについては事前の申込みや設定が必要です。

レンタルサーバーの自動バックアップから削除した記事を復元する方法【エックスサーバーの場合】

それでは、例としてエックスサーバーの自動バックアップから削除した記事を復元する方法をご紹介します。

手順1:Webデータを復元する

最初に行うのはWebデータの復元です。

サーバーパネルにログインし、「バックアップ」をクリックします。

エックスサーバー

以下のように設定し、「上記の注意事項を理解した上で処理を行います」にチェックを付け、「復元を開始(確認)」を押します。

エックスサーバー
処理種別
自動バックアップデータから復元
対象バックアップ日
復元したい時点の日付(例:2021年9月11日時点に戻したい→2021-09-11)
取得方法
対象を指定して取得(対象ドメイン、Web領域にチェック)

「復元を開始(確定)」を押します。

エックスサーバー

するとWebデータの復元が開始されます。

進行状況は「自動バックアップデータ取得・復元履歴」タブの「状況」で確認できます。ここが「正常終了」に変わったら復元完了です。

エックスサーバー

手順2:MySQLを復元する

Webデータの復元が完了したら、続いてMySQLの復元を行います。

サーバーパネルの「MySQL復元」をクリックします。

エックスサーバー

復元したいデータベースの「自動バックアップから復元」から復元したい時点の日付を選択し、「復元」を押します(データベース名がわからない方は先にこちらをご覧ください)。

エックスサーバー

「復元する」を押します。

エックスサーバー

するとMySQLの復元が開始されます。

進行状況は「自動バックアップ復元履歴」タブの「復元状況」で確認できます。ここが「XXXX-XX-XX XX:XX:XX 正常終了」に変わったら復元完了です。

エックスサーバー

復元したいデータベース名がわからないときの調べ方

複数のサイトを運営している場合、データベースが複数あってどれが復元したいデーターベースなのかわからなくなることもあると思います。

そんなときは、FTPを使って対象ドメインの「wp-config.php」の中身を確認しましょう。wp-config.phpは多くの場合、以下のディレクトリにあります。

/対象ドメイン/public_html
FileZilla

ファイルを開くと、上のほうに以下のような記述があると思うので探してみてください。「★」の部分がデータベース名です。

/** WordPress のためのデータベース名 */
define( 'DB_NAME', '★' );

今後の対策について

記事が消えないように、あるいは記事が消えてしまってもすぐに復元できるようにするための対策としては、以下のようなものがあります。

自分でも定期的にバックアップをとる

定期的にバックアップをとっておけば、誤って記事を削除してしまっても落ち着いて対処できます。

記事だけバックアップしたいときは、「DeMomentSomTres Export」というプラグインが便利です。

プラグインの操作は慎重に行う

実は今回私が10記事削除するポカをやらかしたのは、「Search Regex」というプラグインを操作しているときのこと。

このプラグインを使って文字列の一括置換を行う際、「この記事では置き換えをしない」という意味だと思ってメニューから「行の削除」を選択してしまったんです。

WordPress

そうして10記事分同じことを繰り返したら、その記事が消えていたという・・・(;´∀`)

こういうことがあるので、プラグインの操作は慎重に行いましょう。

意味がよくわからない場合は安易に触らないのが一番です(自分への戒め)。

ゴミ箱の自動削除を停止する

ゴミ箱に入れた記事はデフォルトだと30日間保存されたのち自動削除されます。この自動削除を停止したい場合は、function.phpに以下のコードを追加しましょう。

add_action( 'init', 'remove_schedule_delete' );
function remove_schedule_delete() {
  remove_action( 'wp_scheduled_delete', 'wp_scheduled_delete' );
}

自動バックアップ機能のあるレンタルサーバーに乗り換える

以下のレンタルサーバーは事前の申込みや設定の必要なく自動バックアップしてくれます。

  • エックスサーバー
  • ConoHa WING
  • mixhost

今回のようなことがまた起きてしまったときのことを考えると、こういったレンタルサーバーに乗り換えることも検討したほうがいいかもしれません。

まとめ

今回は、WordPressで削除した記事を復元する方法をご紹介しました。

ゴミ箱からも消えている場合や、自分でバックアップをとっていない場合は、レンタルサーバーの自動バックアップを使って復元しましょう。

中には事前の申込みや設定が必要なレンタルサーバーもありますが、そうでない場合、過去7日~14日分は復元できるケースが多いです。

まずはお使いのレンタルサーバーに自動バックアップ機能があるか確認してみましょう!