このエントリーをはてなブックマークに追加 Twitterでツイート マルチサイトでスラッグ編集

WordPress MUの標準環境では、カテゴリーや投稿タグの投稿・編集時にスラッグを入力することはできませんでした(少なくとも2.8.5ではできなかった)。
WordPress MUではスラッグの入力ボックスが表示されない!
この状態は、WordPress 3.0にアップデートした後も同じだったのですが、新規にWordPress 3.0をインストールしてマルチサイト化してみると、その環境ではスラッグを入力することが可能です。
新規にWordPress 3.0をマルチサイト化するとスラッグの入力ボックスが表示された!

「これは!」と思いソースコードを眺めてみると、WordPress 3.0で拡張されたglobal_terms_enabled関数を使ってスラッグの入力ボックスを表示するか判断していました。さらにトレースしていくと、get_site_option関数でその設定内容を取得しています。get_site_option関数は、通常のシングルサイトとマルチサイトで振る舞いが変わるようになっていて、update_site_option関数でその値を更新できることがわかりました。

そこで、現在のテーマ内にあるfunction.phpに次のような記述を追加。

if ( global_terms_enabled() )
	update_site_option( 'global_terms_enabled', '0' );

これは1度実行すれば大丈夫なので、functions.phpを更新して管理ページにアクセスすれば更新が終わるので、その後で削除するといいでしょう。
これで、WordPress MUからアップデートした環境でもスラッグが編集できるようになりました。これもWordPress 3.0のメリットですかね。

投稿日:2010年7月5日

コメント / トラックバック2 件

  1. Atom より:

    同じ症状で、MUから3.xにアップデートしてカテゴリーとタグのスラッグの編集ができませんでした。global_terms_enabledで検索してこちらへたどりつきました。

    うまくいきました。ありがとうございます。

  • ※コメントは、スパム対策などのためIPアドレスにて制限しております。
  • ※誹謗や中傷、スパムなど、不適切な内容は公開いたしません。ご了承ください。