wp-plugin-kashiwazaki-seo-stop-old-slugs

A plugin to manage old slugs, allowing you to edit, delete, and disable redirects for them from the WordPress admin panel.

PHP ★ 0 🕔 0 GNU General Public License v2.0

Kashiwazaki SEO Old Slug Manager

WordPress
PHP
License
Version

WordPressの旧スラッグ(_wp_old_slug)を管理画面から一覧表示・編集・削除できるプラグインです。

なぜこのプラグインが必要なのか

WordPressの旧スラッグ機能とは

WordPressでは、投稿のスラッグ(URL)を変更すると、自動的に旧スラッグが _wp_old_slug としてデータベース(wp_postmetaテーブル)に保存されます。これにより、古いURLにアクセスがあった場合、新しいURLへ301リダイレクトが行われます。

この機能の目的:

  • SEO対策: 古いURLへの被リンク評価を新URLに引き継ぐ
  • リンク切れ防止: ブックマークや外部サイトからのリンクが壊れない

WordPress標準の問題点

しかし、WordPress標準の管理画面には旧スラッグを管理する機能が存在しません

  • 旧スラッグの一覧を確認できない
  • 不要になった旧スラッグを削除できない
  • リダイレクトを個別に停止できない
  • 転送先がエラー(404など)になっているか確認できない

結果として、多くのサイトでは旧スラッグがデータベースに溜まり続け、問題に気づかないまま放置されています。

従来の対処法

  1. 放置 - 多くの人は旧スラッグの存在すら知らない
  2. phpMyAdmin - データベースを直接操作(危険を伴う)
  3. WP-CLI - wp post meta delete --all _wp_old_slug
  4. SQLクエリ - DELETE FROM wp_postmeta WHERE meta_key = '_wp_old_slug'

これらは技術的知識が必要で、個別の管理ができません。

このプラグインが解決すること

  • 全ての旧スラッグを一覧表示
  • 個別に編集・削除が可能
  • リダイレクトの停止/開始をワンクリックで切替
  • 転送先のHTTPステータスチェック
  • 無効な旧スラッグの警告表示

機能一覧

状態管理

表示 説明
301転送中(黄色) リダイレクト有効。クリックで停止
転送停止(グレー) リダイレクト無効。クリックで開始

一括操作

  • 全選択: 全ての行を選択/解除
  • 選択を301転送開始: 選択した行のリダイレクトを有効化
  • 選択を転送停止: 選択した行のリダイレクトを無効化
  • 選択を削除: 選択した行を一括削除

新規作成

転送先スラッグ(またはURLパス)を入力して、新しい旧スラッグを手動で追加できます。「確認」ボタンで転送先URLを事前確認できます。

編集機能

対象 操作 説明
旧スラッグ 「編集」ボタン リダイレクト元のスラッグを変更
転送先URL 「編集」ボタン この旧スラッグの紐づけ先を別の投稿に変更。入力したスラッグを持つ投稿に紐づけ直します

転送先チェック

「転送先をチェック」ボタンで、全ての転送先URLのHTTPステータスを確認できます。

バッジ 意味
200(緑) 正常
3xx(黄) リダイレクト
4xx/5xx(赤) エラー

連携分析

マーク 説明
最終着地点(他の旧スラッグから参照されていない)
クリックで連携先へジャンプ
⚠️ 無効な旧スラッグ(他の投稿が同じスラッグを使用中)

ソート機能

以下の項目でソート可能:

  • 旧スラッグ
  • 転送先URL
  • 転送先ID
  • 更新日

インストール

  1. プラグインファイルを /wp-content/plugins/kashiwazaki-seo-stop-old-slugs/ にアップロード
  2. WordPress管理画面でプラグインを有効化
  3. 管理画面メニューから「Kashiwazaki SEO Old Slug Manager」にアクセス

対応範囲と制限事項

項目 対応 説明
投稿のスラッグ変更 ✅ 対応 スラッグ変更時に自動保存される旧スラッグを管理
パーマリンク構造の変更 ✅ 対応 スラッグが一致すれば新しい構造のURLへ転送
固定ページの親変更 ❌ 非対応 WordPressコアの仕様で階層型投稿タイプは非対応
部分一致 ❌ 非対応 スラッグは完全一致のみ

技術仕様

システム要件

  • WordPress: 5.0以上
  • PHP: 7.4以上
  • MySQL: 5.6以上

セキュリティ

  • Nonce検証によるCSRF攻撃防止
  • manage_options 権限必須
  • 全ての入力データをサニタイズ
  • prepared statementによるSQLインジェクション防止

ライセンス

GPL-2.0-or-later

開発者

開発者: 柏崎剛 (Tsuyoshi Kashiwazaki)
ウェブサイト: https://www.tsuyoshikashiwazaki.jp/