ワードプレスのadd_post_meta関数の使用方法・解説

概要

add_post_meta関数は、WordPressの投稿にカスタムフィールド情報を追加するために使用される関数です。この関数を使用することで、記事やページに対して追加の情報を関連付けることができ、これによりデータの管理や表示のカスタマイズが可能になります。カスタムフィールド情報は、特に以下のような機能を実装する際によく使われます。

  1. 投稿の追加情報を保存する
  2. カスタムテンプレートでのデータ表示
  3. プラグインによるメタボックスの表示
  4. 特定の属性に基づくコンテンツフィルタリング
  5. SEOデータ(例:マイクロデータ、構造化データ)の保存
  6. ユーザビリティ向上のための追加情報表示
  7. 外部APIから取得したデータの保存
  8. ウェブサイトの分析データの関連付け

構文

add_post_meta( $post_id, $meta_key, $meta_value, $unique );

パラメータ

  • $post_id (int) – 投稿のID。
  • $meta_key (string) – メタデータのキー名。
  • $meta_value (mixed) – メタデータの値。
  • $unique (bool) – 同じキー名のメタデータを一度だけ追加するかどうか。デフォルトは false です。

戻り値

  • 成功した場合、追加されたメタデータのIDが返される。失敗した場合は false が返される。

関連する関数

バージョン

  • この関数はWordPressのすべてのバージョンで使用可能です。

コアファイルのパス

  • wp-includes/post.php

この関数のアクションでの使用可能性

アクション 使用例
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

サンプルコード

サンプルコード 1: 基本的なカスタムフィールドの追加

$post_id = 123; // あなたの投稿ID
$meta_key = 'favorite_color';
$meta_value = 'blue';

add_post_meta( $post_id, $meta_key, $meta_value );

このサンプルコードは、投稿ID 123 に「favorite_color」というカスタムフィールドを追加し、その値として「blue」を設定します。

サンプルコード 2: 一意なメタデータの追加

$post_id = 124; // あなたの投稿ID
$meta_key = 'social_image';
$meta_value = 'https://example.com/image.jpg';

add_post_meta( $post_id, $meta_key, $meta_value, true );

このコードは、「social_image」というメタデータを追加し、同じキーのデータが存在しない場合にのみ追加されることを示しています。

サンプルコード 3: 繰り返しデータの追加

$post_id = 125; // あなたの投稿ID
$meta_key = 'tag';
$meta_value = 'WordPress';

add_post_meta( $post_id, $meta_key, $meta_value );
add_post_meta( $post_id, $meta_key, 'PHP' );

この例では、同じ「tag」キーで異なる値(「WordPress」と「PHP」)を持つカスタムフィールドを追加します。

サンプルコード 4: 投稿ストリームのメタデータ追加

$post_id = 126; // あなたの投稿ID
$meta_key = 'view_count';
$meta_value = 100;

add_post_meta( $post_id, $meta_key, $meta_value );

このコードは、投稿ID 126 に対して「view_count」というカスタムフィールドを追加し、その値を100に設定します。

サンプルコード 5: エラーハンドリングの例

$post_id = 127; // あなたの投稿ID
$meta_key = 'custom_field';
$meta_value = 'example value';

$result = add_post_meta( $post_id, $meta_key, $meta_value );

if ( !$result ) {
    echo "メタデータの追加に失敗しました。";
} else {
    echo "メタデータが正常に追加されました。";
}

このコードは、add_post_meta関数の結果をチェックし、成功または失敗に応じたメッセージを表示します。

この関数について質問する


上の計算式の答えを入力してください