Remove Old Slugs:投稿のURLを変更した際に自動保存される旧URLの情報をまとめて削除できる
WordPress では公開済みの投稿の URL(スラッグ) をカテゴリーを変えたり変更すると、
変更前の URL(スラッグ)を wp_postmeta のテーブルに自動的に保存します。
※SELECT * FROM wp_postmeta WHERE meta_key = '_wp_old_slug’ で検索可能です。
何故に保存するかというと公開されてからまもなく変更していれば影響は少ないですが、
公開してから長い時間を経過している場合には新しい URL に変更しても、
旧 URL へアクセスされる可能性が多々あります。
そうすると通常の動作的には、404(Not Found)エラーが発生しますよね。
それを防ぐために 1 度でも存在していた URL にアクセスが有った場合には、
新しい URL へ WordPress が自動的にリダイレクト処理を行ってくれます。
これはこれで非常に便利な機能なのですが、人間は悲しいかな忘れる生き物です。
記事を新規作成した際に旧 URL を新規記事の URL に設定してしまう可能性があります。
そうすると新しい記事が表示されずに URL を変更した記事の新しい URL へリダイレクトされてしまって、人間が慌てふためくと言う結果になります。
スラッグを頻繁に変更する運用の仕方はレアケースだと思いますが、
スラッグ変更が多いサイト運用をしていても定期的に下記の SQL を発行すれば良いです。
DELETE FROM wp_postmeta WHERE meta_key = '_wp_old_slug’
でも、これはこれで面倒だと思います。
そのような時に便利な WordPress 用プラグインがあります。
それは「Remove Old Slugs」です。
そのインストール手順から日本語化・使い方と設定などを解説していきます。
Remove Old Slugs
Remove Old Slugs は、wp_postmeta テーブルに格納されている旧 URL 情報を 1 クリックで削除できます。
※実際には、下記の SQL を発行しているだけです。
DELETE FROM wp_postmeta WHERE meta_key = '_wp_old_slug’
記事を作成もしくは更新時点でのバージョン:v 2.2.0
マルチサイトでの利用:可
インストール手順
下記の URL から ZIP ファイルを入手して、管理画面からアップロードして有効化するか
Remove Old Slugs – WordPress.org
もしくは、WordPress.org の公式プラグインディレクトリにリリースされているので、
管理画面から入手できます。
ダッシュボードから「プラグイン」メニューの「新規追加」を選択し、
プラグイン追加画面右上の検索窓に「Remove Old Slugs」と入力します。
検索結果の一番左上に表示されると思うので、「今すぐインストール」をクリックします。
※一番左上に表示されない場合は、上記の画像から探して下さい。
インストールが完了したら、プラグインを「有効化」します。
プラグインのインストールに慣れていない方は、
下記の記事にて詳しく解説していますので、御覧ください。
WordPressプラグインのインストール手順を解説 – WordPress活用術
日本語化
Remove Old Slugs を有効化した際に日本語化されない場合には、
日本語化用の言語パックを translate.wordpress.org から入手できる場合があります。
WordPress と関連プロジェクト(テーマ・プラグイン)用の翻訳プラットフォームとして、
translate.wordpress.org (GlotPress) が導入されています。
※ボランティアで翻訳されている場合が多いので、
全てのプラグインで、必ずしも日本語化用の言語パックが用意されているわけでは無いです。
また、用意されていても 100% 翻訳されている保証もありません。
日本語化用の翻訳ファイルの探し方は、下記の記事を参照してください。
WordPress公式での日本語化用の翻訳ファイルの探し方 – WordPress活用術
専用メニュー
ダッシュボードの「ツール」メニューの中に追加されています。
使い方
専用メニューを開くと削除する旧 URL に関する情報が一覧で表示されます。
削除しても問題がなければ「Remove Old Slugs」ボタンをクリックするだけです。
削除に成功すると上のようなメッセージが表示されます。
削除できる旧 URL 情報が 1 件も無い場合には上のようなメッセージが表示されます。