プラグイン
WordPressの記事投稿時にカテゴリーを並び替えられなくする2つの方法
2017.08.27
WordPressは記事作成時に選択したカテゴリーが記事投稿画面で勝手に並び変えられてしまいます。選択するまではツリー状に並んでいますが、選択後記事を保存してしまうとソートされてしまいますのでカテゴリーの親子関係が非常にわかりずらくなります。
プラグインAdjust Admin Categoriesで解決
投稿時のカテゴリーの振る舞いはAdjust Admin Categoriesで色々解決できてしまいます。サイトの運営方法にもよりますが、複数のカテゴリーを選択して欲しくない場合、カテゴリーの選択を必須にしたい場合、親カテゴリーを選択して欲しくない場合にも使えます。コンテンツSEOやロングテールSEO的には複数のカテゴリーを選択しないほうが効果的だと考えます。1記事1テーマですからね。
Adjust Admin Categoriesで出来ること
Adjust Admin Categoriesで出来ることは以下の通り、カスタム投稿タイプにも対応していますので、カテゴリー周りはバッチリです。
- チェックボックスの並べ替えを停止する
- チェックボックスをラジオボタンに変更できる
- 親カテゴリーを選択できなくする
- カテゴリーの選択を必須にできる
Adjust Admin Categoriesの使い方
プラグイン>新規追加>Adjust Admin Categoriesで検索>今すぐインストール>有効化で使えるようになります。インストールは設定>Adjust Categoriesから設定できます。複数の投稿タイプを設定する場合はひとつずつ変更を保存する必要があります。
設定するとカテゴリーの振る舞いが変わります。
Adjust Admin Categoriesで出来ないこと
Adjust Admin Categoriesの唯一残念なところは初期状態でカテゴリーの選択が出来ないところです。個人的には必要ないのですがクライアントレベルでは要望として上がることもあります。
プラグインを使わずに並び変えを停止
プラグインを使わずに並び替えを停止するには以下のコードをfunctions.phpに記述します。
function cat_sort_none( $args, $post_id ){ $args['checked_ontop'] = false; return $args; } add_filter( 'wp_terms_checklist_args', 'cat_sort_none' , 10, 2 );
カテゴリーを並べ替えられなくする方法は以上のようにプラグインを使う方法かfunctions.phpに直接コードを記述するかの2通りの方法があります。その他の問題の解決方法もだいたいこの2択です。
チェックボックスをラジオボタンに変更する
Adjust Admin Categoriesを使わない場合は他のプラグインを使うか管理画面のチェックボックスをjQueryでラジオボタンに置き換えると実現可能です。プラグインが使える状況ならAdjust Admin Categoriesでいいと思うのですが、せっかくなのでAdjust Admin Categoriesが出来ない初期状態からカテゴリーを選択できるプラグインがあるので紹介します。
PS Taxonomy Expanderで投稿カテゴリーの調整
PS Taxonomy ExpanderはWordPress高速化でおなじみKUSANAGIを開発しているPrime Strategyのプラグインです。KUSANAGIがすごいのでなんだか安心して使えます。
PS Taxonomy Expanderは設定>投稿設定から設定を行います。有効化すると管理画面のナビゲーションにTerm orderメニューが表示されます。ここからカテゴリーの並べ替えなどを行うことも可能です。しかし今回の関連で使うPS Taxonomy Expanderの機能は以下の通りです。
- チェックボックスをラジオボタンに変更できる
- 初期カテゴリーを選択できる
並び替え停止はコードを記述して行い、チェックボックスをラジオボタンに変更し、初期カテゴリーを選択しておけば必須にする必要もありません。この辺の使い分けは運営に合わせて柔軟に対応するのがいいかもしれませんね。