【WordPress】タグ,カテゴリーの編集・削除ができない時の対処法

wp_tmb_wordpress-cannot-delete-tag-category

エラー タグやカテゴリーを編集・削除しようとしたら

・カテゴリーは更新されませんでした。
・このスラッグ””はすでに他のキーワードで使用されています。
・その操作を実行する権限がありません。-1

と出て、削除することができないぞ…
解決するために「WordPress タグ 削除できない」と調べましたが、具体的な解決法がなかなか見つからない。
色々な方法を試したところ、次の方法で削除することができました。

成功

・重複しているスラッグ名を探して削除する
・phpMyAdminから削除する

今回は、WordPressでタグ,カテゴリーの編集・削除できない時の対処法を示します。

問題 タグ,カテゴリーを編集・削除することができない

エラー1 「カテゴリーは更新されませんでした。」

The category was not updated.

カテゴリーは更新されませんでした。

  • 名前: Blender
  • スラッグ: blender-blender → blenderに変更したい
  • 親カテゴリー: CG制作

これで[更新]するとエラーが出ました。
名前は「既に使用しているスラッグ名(キーワード)-blender」と決められてしまいました。

エラー2 「このスラッグ””はすでに他のキーワードで使用されています。」

This slug "" is already in use for other keywords.

このスラッグ””はすでに他のキーワードで使用されています。

削除したつもりだったが[タグ]か[カテゴリー]そのキーワードが使用しているらしい。

エラー3 「その操作を実行する権限がありません」

I don't have permission to perform the operation.

その操作を実行する権限がありません。

[投稿]→[クイック編集]→[タグ]で新しいタグ[adobe]と入力しました。
その後[タグ]で名前[Adobe],スラッグ名[adobe]に変更しました。
そしたら, [カテゴリー]になぜか[Adobe]が出来ていました。

ここで[タグ]と[カテゴリー]が重複したことを確認しました。

小文字大文字を同じタイミングでいじったのでそのせいかもしれない。

エラー4 「-1」

-1

その操作を実行する権限がありません。
-1

  • 名前: Adobe
  • スラッグ名: adobe → adobe-に変更したい

これで[カテゴリーを更新]したら, この「-1」エラーが出ました。

原因「同じスラッグ名を使用することはできない」

「WordPress スラッグ 重複」でggるとたくさん情報が出てきます。
調べたところ、タグとカテゴリーは同じスラッグ名の使用することはできないそうです、
エラーを経験してから気づきました。
タグとカテゴリーはwp_termsというデータベースで一緒に管理されているとあったので、phpMyAdminでwp_termsにいってみるとタグとカテゴリーが一緒の扱いになっていることが確認できました。

対処法1 スラッグを探して削除する

スラッグを1個1個、確認すれば重複しているスラッグが見つかる可能性があります。

Find and remove the slug.
  1. [WordPress 管理画面] [タグ]、[カテゴリ]で重複している可能性があるスラッグ名を探します。
  2. 見つけることができたら削除します。
  3. これで完了です。時間を待たずにすぐに変更したいスラッグ名に変えることができます。

私の場合、完全に見落としていました。
1個1個探す手間を省いていました。
今後こうなったら、重複しているスラッグはないか1個1個探したいと思います。

対処法2 phpMyAdminから削除する(強力)

phpMyAdminから削除すると確実にタグとカテゴリーを削除することができます。
データベースについては基本的にサポート外になることが多いです。
詳しい知識がある方のみお試しください。

  1. phpMyAdminにログインします。phpMyAdminへのログイン方法は、契約しているサーバーごとに異なります。

今回は私が契約しているロリポップ!を例に説明します。

  1. ロリポップ!のユーザー専用ページにログインします。
  2. [ロリポップ!ユーザー専用ページ] [サーバーの管理・設定] → [データベース]を選択します。
Lollipop! User-only page. Server management and configuration. Database
  1. [データベース] [phpMyAdminを開く]
Open phpMyadmin
  1. [phpMyAdmin]にログインします。
  2. 「wp_terms」や「wp1_terms」という名前を見つけます。

ここにWordPressで追加したタグとカテゴリーがあります。

参考: WordPressのデータベースのテーブルってどうなってるの? – illustswitch.com

  1. 気になっているスラッグを見つけて[削除]します。
phpmyadmin. remove the slug.

7.「DELETE FROM , wp1_terms WHERE wp1_terms , term_id = 78を本当に実行しますか?」 [OK]します。

DELETE FROM  ,wp1_terms WHERE  wp1_terms , term_id = 78  Do you really want to run it? OK
  1. 「1行削除しました。」(クエリの実行時間 0.0021秒) これでスラッグ削除完了です。
「1行削除しました。」(クエリの実行時間 0.0021秒)

その他試したこと(私が失敗したこと)

カテゴリをタグに変換する【Categories to Tags Converter】

WordPressが出している「カテゴリをタグに変換する」プラグイン「Categories to Tags Converter」を使用しました。

問題なく、タグをカテゴリーに変換することができましたが、スラッグが存在していたため

削除することができせんでした。

すべてのタグを一括で削除する【Mass Delete Tags】

全てのタグを一括削除するプラグイン「Mass Delete Tags」を導入して実行しました。

この時も、**削除されていないスラッグがあったため、削除することができせんでした。

使用していないタグを一括で削除する【Mass Delete Unused Tags】

使用していないタグを一括で削除するプラグイン「Mass Delete Unused Tags」を導入して実行しました。

これまた、重複しているスラッグを見つけられていなかったので、削除することができせんでした。

全てのタグを削除した

All tags have been removed.

これでリセットできるかなと思いきや、削除に失敗。

参考 WordPressのパーマリンク/スラッグが変更方法【できない時の対処法も】 – itojisan.xyz

最後に

カテゴリ、タグ名を見直しました。
カテゴリー決めにはまだ迷いがある。

動作環境

  • WordPress 5.5

プラグイン

参考: