Hatena::ブログ(Diary)

satake7’s memo このページをアンテナに追加 RSSフィード

2009-02-27 WordPress MUのカテゴリースラッグ(slug)の変更

WordPress MUのカテゴリースラッグ(slug)の変更

WordPress MU 2.7ではカテゴリースラッグ(slug)をクイック編集で修正できるように一見なっているのですが、スラッグ(slug)を入力してもカテゴリー名をサニタイズしたもので上書きされてしまい、変更することができません。

単純なバグとも思えないので、なにか脆弱性の問題からスラッグ(slug)を変更できなくしているのかなという気もしないではないですが、OwnRiskということでスラッグ(slug)を変更できるようにしてしまいます。

ソースの修正

function sync_slugs( $term, $taxonomy, $args ) {
  if (empty($args['slug']))
    $args[ 'slug' ] = sanitize_title( $args[ 'name' ] );
  return $args;
}
add_filter( 'pre_update_term', 'sync_slugs', 10, 3 );
wp-admin/includes/mu.php

スラッグ(slug)が空っぽだったらという if文を突っ込んでおきました。なぜ、MUだけこうしているかをしっかり考えずに対処していますので、あくまでも自己責任でお願いします。

参考

ynagaynaga 2009/03/16 15:44 はじめまして
satakeさんのおかげで、MUで一番困っていたことが解消されました。

ちなみに、この方法でハックをした場合

スラッグを変えると、カテゴリIDが勝手に変わってしまうので、ちょっと注意が必要です。


この件について以前、本家のフォーラムで質問したことがあります。

MUでは、全ブログのカテゴリーやタグを一括管理しているので、勝手にslugを書き換えられないようにしているそうです。

でも、異なるブログで同じカテゴリ名を入れても問題ないので、理由が分かりません。

とにかく、私はすごく助かりました。
ありがとうございます。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証