wp_set_post_categories

説明

mixed wp_set_post_categories( [ int $post_ID = 0 [ , array $post_categories = array() ] ] )
投稿情報にカテゴリーを設定する。

パラメータ

  • $post_ID
    投稿IDを指定(省略時は0)。
  • $post_categories
    カテゴリーIDを配列で指定(省略時はarray())。

返り値

設定したカテゴリーIDの配列を返す。設定できなかった場合は、エラー内容を示す WP_Errorのオブジェクトを返す。

注意

指定したカテゴリーは投稿記事に設定された既存のカテゴリーをまるごと置き換えられる。追加したい場合は wp_set_object_terms関数を使用する。

なおパラメータ$post_categoriesにarray( '' )が指定された場合は、カテゴリーの設定は行わずにtrueを返す。

[5.5.0]'default_category_post_types'フィルターが追加され、カスタム投稿タイプの投稿情報にデフォルトカテゴリーが適用できるようになった。


使用例

  • 投稿IDが100の投稿記事にカテゴリーIDが3のカテゴリーを設定する。
    <?php wp_set_post_categories( 100, array( 3 ) ); ?>

フィルター

[5.5.0]本関数のパラメータ$post_categoriesが空の場合に'default_category_post_types'フィルターを呼び出す。パラメータ$post_typesは空の配列が格納されている。
$default_category_post_types = apply_filters( 'default_category_post_types', $post_types );

アクション

実行するアクションはありません。

ソースファイル

/wp-includes/post.php

最終更新 : 2020年08月20日 15:42



お勧め

子カテゴリのアーカイブページを親カテゴリ用のテンプレートファイルで表示しよう(2011年12月8日 更新)

少し前に投稿した「適切なテンプレートファイルを用意してテンプレート内の振り分け処理を無くす」で説明した通り、特定のカテゴリ専用のテンプレートとしてcategory-○○.phpを用意することで、category.phpやarchive.php内で振り分けを行う必要がなくなる。ただ、すべてのカテゴリ分を用意するのは効率的ではないし、特に子カテゴリについては親カテゴリと共通内容になるケースが多いのではないだろうか。ここでは、子カテゴリの個別テンプレートファイルを作らず、親カテゴリのテンプレートを利用する方法を紹介する。

管理画面の'アイキャッチ画像'を'写真'に変える(2013年1月23日 更新)

クライアント向けに専用のテーマを提供する際、稀に管理画面内の用語の変更を依頼されることがある。今回は、'アイキャッチ画像'だとわかりにくいので'写真'に変えてほしいということだった。

5.7の機能拡張:投稿一覧画面向けのフィルター(2021年2月18日 更新)

昨日、予定通り公開された「WordPress 5.7 Beta 3(以降Beta 3)」。WordPressはバージョンアップ毎にアクションやフィルターが追加されており、今回のバージョンアップでは投稿一覧画面に影響を与えるフィルターが追加されていた。

Login rebuilder 2.6.0の新機能紹介(2019年4月22日 更新)

今回追加したものは、REST API / Usersの使用をログイン時のみ使用できるように制限する機能である。この機能を有効にすることで、管理者情報が漏洩するリスクを低減させる効果が期待できる。

タイトルのみをキーワード検索する(2014年4月3日 更新)

WordPressのキーワード検索は、投稿タイトルと本文のどちらかに指定したキーワードが含まれているかを調べるわけだが、時々タイトルだけとか、逆に本文だけ検索したいケースがある。