2018.09.24
WordPress
WordPressの記事投稿時にカテゴリの1つ目に自動でチェックを入れる方法
wordpressの記事投稿時に、デフォルトのカテゴリーには予めチェックを入れておきたいときや、カテゴリーへのチェックを強制したいときに利用できるコードを紹介します。 「だいたいの記事が1つ目のカテゴリなんだけど、特定の記事だけは他のカテゴリに分類することがある」というようなブログの運用は企業サイトではままあることかと思いますが、そういった場合の利便性アップや、チェック忘れを防止できます。
カテゴリにチェックが入ってるようにする記述
functions.php以下のコードを書き込みます。これはデフォルトの投稿のカテゴリへの記述です。
add_action('admin_print_footer_scripts', 'admin_print_footer_scripts_custom', 21); function admin_print_footer_scripts_custom() { echo '<script type="text/javascript"> //<![CDATA[ jQuery(document).ready(function($){ // default check if ($("#category-all .categorychecklist input[type=checkbox]:checked").length == 0) { $("#category-all .categorychecklist li:first-child input:first-child").attr("checked", "checked"); } }); //]]> </script>'; }
7~8行目の記述で投稿の種類とチェックする項目が何番目のものかをcssを利用して指定しています。
カスタム投稿の場合
前述の7~8行目を編集することで特定のカスタム投稿タイプを指定して、チェックを入れておく命令を行えます。
#category-all
の部分を制作したカスタム投稿タイプのIDへと書き直します。以下は#test-category
というカスタム投稿タイプ名に変更した例です。
add_action('admin_print_footer_scripts', 'admin_print_footer_scripts_custom', 21); function admin_print_footer_scripts_custom() { echo '<script type="text/javascript"> //<![CDATA[ jQuery(document).ready(function($){ // default check if ($("#test-category .categorychecklist input[type=checkbox]:checked").length == 0) { $("#test-category .categorychecklist li:first-child input:first-child").attr("checked", "checked"); } }); //]]> </script>'; }
まとめ
クリック一回分の手間とはいえ、更新のたびに発生する動作だと簡便化したくなるのが人の性というものです。運用に合わせて可能な限り便利なカスタマイズを行って、利用者満足度の向上に貢献しましょう。