5330-radiobutton

投稿のカテゴリー選択をラジオボタンにする

WordPressで新規投稿する際に、記事のカテゴリーを決めて選択するようにしていることがよくあると思います。5330のブログでもWordpress、プラグイン、テーマ、カスタマイズ、の4つを定義して、記事を整理しています。

投稿を整理するのに大事なカテゴリーですが、一つの投稿に複数のカテゴリーが付けられるので、散らかることもよく起ります。(カテゴリーやタグを付けすぎて、何がなんだかというブログもたまに見かけますね。)整理整頓好きな方だと、一つの記事に一つのカテゴリーで十分と考える方もいるでしょう。そういう場合、カテゴリーの選択を複数選択が可能な「チェックボックス(四角いやつです)」ではなく、一つしか選択できないラジオボタン(丸いやつです)にしたいかもしれません。WordPressの使い方をよく知っている人なら良いですが、お客さんに納品する場合など、入力方法を用途にあわせて制限してあげた方が親切ですし、利用の際に間違いも起りにくくなります。

カテゴリー選択をラジオボタンに変更するコードを紹介します。ちなみにこの記事の元ネタはこちらです:

[resolved] Help create a simple admin plugin

if(strstr($_SERVER['REQUEST_URI'], 'wp-admin/post.php')) {
    ob_start('one_category_only');
}
if(strstr($_SERVER['REQUEST_URI'], 'wp-admin/post-new.php')) {
    ob_start('one_category_only');
}
function one_category_only($content) {
    $content = str_replace('type="checkbox" name="post_category', 'type="radio" name="post_category', $content);
    return $content;
}

リンク先のコードだけだと、編集だけで新規作成の時にラジオボタンにならないので、post-new.phpを追加しました。変更箇所はそれだけです!リンク先にあるようにプラグインにしてもいいですし、functions.phpに書き込んでも同じように動きます。お試しください。