WP 2.5 のタグ付け機能のバグ

2.3 からひきづってる(と思われる)カスタムなタグスラッグを設定しているときのタグの重複問題が 2.5 RC1 でも解決してないことに今頃気づいた。wp-testerswp-hackerstracを調べたが誰も報告してないので、このままリリースされたらたまらんと思って trac に報告したが、速攻で 2.6 に先送りされてがっかりorz。私一人が騒いだとろで説得力はないので、この問題にお困りの方はぜひこのチケットに書き込んでください#6593 (Tags with custom slugs get recreated on post edit screen) の重複として閉じられました)。

追記: 2008-07-20

2.6 では #6593 のパッチで回避できます。

再現手順:

  1. タグ名”aaa“、タグスラッグ”bbb“で新規にタグを作成
  2. 新規投稿を作成し、タグ入力欄に”aaa“を入力して保存
  3. タグ管理画面に戻るとタグ名”aaa”(このタグスラッグは”aaa”)がもう一つできている
  4. さきほどの投稿の編集画面で、こんどはタグ入力欄に”bbb”を入力して「追加」ボタンをクリック
  5. タグ入力欄の「この投稿で使われるタグ」には”aaa”と”bbb”タグが表示される
  6. 「保存」ボタンをクリックすると、タグ入力欄の「この投稿で使われるタグ」の“bbb”が”aaa”に変わる(つまり“aaa”が2個表示される
  7. もう一度「保存」ボタンをクリックすると“aaa”が一つになる(“bbb”スラッグを持つ”aaa”タグは取り除かれる

てことで、WP 2.3 で日本語のタグ名にアルファベットのタグスラッグをつけている場合、既存の投稿で何も変更しなくても、保存ボタンをクリックするとまず間違いなく日本語のタグが重複して作られる。

この回避策としては:

  1. タグ名とタグスラッグを一致させる(タグスラッグを編集できるようになった意味がないじゃん!)
  2. 投稿編集画面のタグ入力表示欄をスラッグのみの入力や表示に変更する Advanced Tag Entry プラグインを使う(作者によれば 2.5 での使用はおすすめしないとのことだが、使えます)
  3. 投稿編集画面のタグ入力欄にはタグスラッグを入力して「保存」し、その投稿の編集画面ではそれ以降2度と「保存」ボタンを押さないようにする(やだよ~!)

私はもういまさらタグ名とタグスラッグを一致させるのはしんどいので、とりあえずは Advanced Tag Entry プラグインを使うしかなさそうだ。。。

追記: 2008 年 3 月 29 日