【Wordpress】プラグイン・Broken Link Checkerのおかげで記事消失(?)を免れた
も・く・じ
ワードプレスネタからとんとご無沙汰のきゅいじんです。
最近はSIRIUSを使ってのアフィリエイトサイト作成で忙しく、ワードプレスサイトのチェックまで手が回りませんでした。
そしたら危うく総記事の半数近くを消失させるところだったんです。
いや正確には「きっと記事が消失していたであろう」という半分推測のネタでもあります。
もっと具体的に言うと「ゴミ箱」の機能に関する話です。
覚えておいて損はないと思いますよ。
それは1通のメールが教えてくれた
記事が消失するかもしれなかったワードプレスサイトっていうのは当サイトのことです。
昨晩、「リンクエラーの検出」という件名で1通のメールが届きました。
これは当サイトに入れている「Broken Link Checker」というリンク切れを検出するプラグインが、何らかのリンクエラーを発見したときに知らせてくれるメールです。
たとえば古い記事とかで、参考記事として紹介した記事なんかが引っ越し等でリンク切れが出た場合、リンクエラーになります。
そのままリンクエラーを放っておくとGoogle先生の機嫌を損ねてしまうので、Broken Link Checkerからお知らせが来たときには(リンク切れが起きたときは)ちまちまと修正していくんです。
といってもそんなにひんぱんにリンクエラーが起きることはなく、今度のメールも「また古い記事のなんかの参考記事が逝ったかな」ぐらいの軽い気持ちでリンクをチェックしていったんですね。
そうしたら外部リンクエラーではなく、数か月前にアップした当サイトの記事への内部リンクが404エラーになってるというじゃないですか。
実際にリンクをクリックしたら確かに404エラー。
見れないんです。
「あれ、おかしいな」と思って管理画面をのぞいてみたら、驚きましたよ。
総記事の約半数近くがゴミ箱に入っていたんですから。
当然のことながら、該当するリンクエラーの記事もゴミ箱の中にありました。
これじゃ404エラーになるわけだ。でもなんで?
もちろん100を越える記事を自分でゴミ箱に入れた記憶はまったくなく、しかもランダムにゴミ箱に入っているのでさらに謎は深まるばかり。
ちょっと鳥肌が立ってしまいました。
もしかしてなんかのウイルス?
それとも最近流行りのワードプレス攻撃によるもの?
今のところ、この現象に関しての原因はさっぱりわかりません。
とにかく急いでゴミ箱に入っている全記事にチェックを入れ「復元」をクリックしたのは言うまでもありません。
知らなったゴミ箱のルール
記事は元に戻ったんですが、似たような症状がないかと思い「ワードプレス ゴミ箱に記事が」で検索していったら、原因とは関係ないものの、ちょっと気になるネタがポンポン飛び込んできたんです。
そのネタというのが、”ワードプレスのゴミ箱に入っている記事の保存期間はデフォルトで30日間”というもの。
「30日を過ぎるとゴミ箱は自動的に空になり、復元も不可能になる」んですって!
知ってました?
私は知りませんでした。
ということは今回のリンク切れを「そのうちやっておくか」ぐらいの軽い気持ちでそのまま放っておいたら、30日後には確実に半数近くの記事がなくなっていたってことぢゃぁないですか!
汗が、アセが、(フキフキ)
このルール、ホントなんでしょうね。
(とちょっと疑ってかかってる私...)
今までゴミ箱の中の記事なんて特に気にもしてなかったので、自動的に消えたのか、それともいったん戻したのか、自分でゴミ箱をカラにしたのかなんてことは一切覚えておりません。
だからこのルールを実際にチェックしたこともないんです。
でも、あちこちの記事で言われていることなんできっとホントなんでしょうね。
あ~コワッ!
あ、そうそう、ゴミ箱の保存期間を延ばす方法も載ってたんでついでにここでご紹介しておきましょう。
ゴミ箱の保存期間は変えられる
ワードプレスがインストールされてる最上位フォルダ(ルートフォルダ)にwp-config.php というファイルがあります。
その中の「/* 編集が必要なのはここまでです...」という文面の直前ぐらいに以下を追記します。
define('EMPTY_TRASH_DAYS', 90);
最後の「90」という数字が保存期間です。
もしも半年ぐらいまで残しておきたいと思ったら90を180(30日×6ヵ月)に変更します。
ただあまり保存期間を長くしすぎるとデータベースが肥大化する恐れもあるのでその辺のさじ加減はお好みで。
いやいやゴミ箱に移動した記事を自動で削除する機能自体を止めたいという時は、下のコードをfunctions.phpに書き込むといいそうです。
0 1 2 3 4 5 |
add_action( 'init', 'remove_schedule_delete' ); function remove_schedule_delete() { remove_action( 'wp_scheduled_delete', 'wp_scheduled_delete' ); } |
wp-config.phpもfunctions.phpも超重要ファイルなので、必ずバックアップを取ってから実行してください。
以上です。
でもなにが原因だったんだろう。
これがわからないと夜も眠れない。
記事はお役にたてましたか?
記事に興味をもっていただけたらソーシャルボタンでの共有お願いします^^
↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓