WordPressの投稿では、カテゴリーを選択しなかった場合は「未分類」に自動で振り分けられますが、カスタムタクソノミーは自動では何も選択されません。
カスタムタクソノミーでタームを選択しなかった場合に、指定するタームが自動で選択されるようにしたい場合は、「functions.php」に以下のコードを記述します。
functions.php
function blog_term_default_check($post_ID) {
global $wpdb;
$curTerm = wp_get_object_terms($post_ID, ‘カスタムタクソノミー名’);
if (0 == count($curTerm)) {
$defaultTerm = array(タームID);
wp_set_object_terms($post_ID, $defaultTerm, ‘カスタムタクソノミー名’);
}
}
add_action(‘publish_カスタム投稿名’, ‘blog_term_default_check’);
function blog_term_default_check($post_ID) {
global $wpdb;
$curTerm = wp_get_object_terms($post_ID, ‘カスタムタクソノミー名’);
if (0 == count($curTerm)) {
$defaultTerm = array(タームID);
wp_set_object_terms($post_ID, $defaultTerm, ‘カスタムタクソノミー名’);
}
}
add_action(‘publish_カスタム投稿名’, ‘blog_term_default_check’);
※全角スペースが含まれているため、コピペして使用する際はご注意ください。
カスタム投稿名、カスタムタクソノミー名、タームIDはそれぞれの設定内容に合わせて記述してください。
ちなみに僕がカスタム投稿の実装によく使うプラグイン「Custom Post Type UI」の場合だと、投稿タイプを追加する際に設定する「投稿タイプスラッグ」をカスタム投稿名に記述します。
「blog」というスラッグだったら、「’publish_blog’」という感じです。
カスタムタクソノミー名には、タクソノミー追加時に設定する「タクソノミースラッグ」を記述します。
最後にタームIDですが、タームの編集画面で、IDを知りたいターム名にカーソルを合わせると表示される画面下のURLにIDが書かれているので、そこで確認することができます。
関連記事
カスタム投稿タイプを作れるプラグイン「Custom Post Type UI」の使い方【WordPress】
WordPressを始めるならエックスサーバーがおすすめ
WordPressでブログやアフィリエイトを始めたい、良いレンタルサーバーに乗り換えたいという方にはエックスサーバーがおすすめです。
その理由は以下の通り。
- 国内シェアNo.1のレンタルサーバー
- サポートの品質が高い
- 表示速度・処理速度が速い
WordPressが学べるおすすめのスクール
WordPress関連の本もありますし、ネット上にはたくさんの情報がありますが、短期間でWordPressも含めたWeb制作のスキルを身につけたい方にはプログラミングスクールがおすすめです。
TechAcademy
- WordPressのサイト制作の流れが理解できる
- WordPressでオリジナルサイトが作れるようになる
- プラグインやカスタムフィールドを学べる
- オンラインで完結
- 講師・メンターが現役エンジニア
Leave a Comment