概要
generate_postdata
関数は、投稿データを生成するために使用されるWordPressの関数です。この関数は、投稿やカスタム投稿タイプの作成時に特定のメタデータを初期化したり設定したりするのに便利です。主に以下の機能を実装する際によく使われます。
- 投稿のメタデータを初期化する
- 投稿の発行日を設定する
- 投稿の著者を指定する
- カスタムフィールドを作成する
- 投稿の状態(公開、下書きなど)を設定する
- タグやカテゴリーを割り当てる
- 投稿サムネイルを設定する
- 投稿の修正履歴を管理する
構文
generate_postdata( $post );
パラメータ
$post
(array|object) : 投稿データの配列またはオブジェクト。投稿タイプやメタデータが含まれています。
戻り値
- (object) : 生成された投稿データのオブジェクト。
関連する関数
使用可能なバージョン
- WordPress バージョン 5.8 以降で利用可能。
コアファイルのパス
wp-includes/post.php
サンプルコード
サンプルコード1: 投稿の初期データを取得する
$post_data = array(
'post_title' => 'サンプル投稿タイトル',
'post_content' => 'これはサンプル投稿の内容です。',
'post_status' => 'publish',
'post_author' => 1,
);
generate_postdata( $post_data );
このサンプルコードは、指定したタイトルや内容を持つ新しい投稿データを生成します。
サンプルコード2: カスタム投稿タイプのためのデータ設定
$post_data = array(
'post_type' => 'my_custom_post_type',
'post_title' => 'カスタム投稿の例',
'post_content' => 'これはカスタム投稿の内容です。',
'post_status' => 'draft',
);
generate_postdata( $post_data );
このコードは、カスタム投稿タイプの初期データを設定します。
サンプルコード3: 投稿にカテゴリーを追加する
$post_data = array(
'post_title' => 'カテゴリ付きの投稿',
'post_content' => 'この投稿にはカテゴリが付いています。',
'post_status' => 'publish',
'post_category' => array( 1, 2 ), // カテゴリーID
);
generate_postdata( $post_data );
このサンプルでは、投稿に特定のカテゴリーを割り当てる方法を示しています。
サンプルコード4: 投稿にカスタムフィールドを追加
$post_data = array(
'post_title' => 'カスタムフィールド付き投稿',
'post_content' => 'ここにカスタムフィールドが追加されます。',
'post_status' => 'publish',
);
generate_postdata( $post_data );
add_post_meta( $post_data->ID, 'custom_field_key', 'カスタム値', true );
このコードは、育成データに基づいてカスタムフィールドを追加する方法を示しています。
サンプルコード5: 投稿の公開日を設定
$post_data = array(
'post_title' => '未来の日付の投稿',
'post_content' => 'これは未来の日付で公開予定の投稿です。',
'post_status' => 'future',
'post_date' => '2023-12-31 12:00:00', // 未来の日付を指定
);
generate_postdata( $post_data );
このサンプルは、未来の日付で投稿を設定する例です。
この関数のアクションでの使用可能性
アクション名 | 使用例 |
---|---|
mu_plugin_loaded | |
registered_post_type | |
plugins_loaded | |
wp_roles_init | |
setup_theme | |
after_setup_theme | |
set_current_user | |
init | |
register_sidebar | |
wp_loaded | |
send_headers | |
parse_query | |
pre_get_posts | |
wp | |
template_redirect | |
get_header | |
wp_head |
非推奨または削除されたバージョン
- 現在のところ、
generate_postdata
は特定のバージョンで非推奨または削除されていません。