sanitize_meta()


WordPressの関数sanitize_meta()は、指定されたメタデータをサニタイズ(不正なデータを除去)するために使用されます。この関数は、保存や表示の際にデータの安全性を確保するのに役立ちます。

構文

sanitize_meta( string $meta_key, mixed $meta_value, string $object_type, int|object $object_subtype = null );

引数の説明:

  • $meta_key (string) — サニタイズするメタデータのキー。
  • $meta_value (mixed) — サニタイズされるメタデータの値。
  • $object_type (string) — メタデータが関連付けられているオブジェクトのタイプ(例: post, user, term)。
  • $object_subtype (int|object) (省略可能) — メタデータのサブタイプ(例: 投稿タイプやタクソノミー)。

例 1: 投稿メタデータのサニタイズ

投稿のメタデータをサニタイズする例です。

$sanitized_value = sanitize_meta( 'custom_key', '不正なデータ', 'post' );

例 2: ユーザーメタデータのサニタイズ

ユーザーのメタデータをサニタイズする例です。

$sanitized_value = sanitize_meta( 'user_meta_key', '12345<script>', 'user' );

例 3: タームメタデータのサニタイズ

タクソノミータームのメタデータをサニタイズする例です。

$sanitized_value = sanitize_meta( 'term_meta_key', '<div>内容</div>', 'term' );

例 4: 投稿タイプ指定のサニタイズ

特定の投稿タイプに関連付けられたメタデータをサニタイズする例です。

$sanitized_value = sanitize_meta( 'custom_meta_key', 'テストデータ', 'post', 'custom_post_type' );

例 5: デフォルトサブタイプでのサニタイズ

デフォルトのサブタイプでメタデータをサニタイズする例です。

$sanitized_value = sanitize_meta( 'default_key', 'default_value', 'post' );

注意事項

  • この関数はサニタイズルールに基づいてデータを変換しますが、保存前に必ず適切な検証を行うべきです。
  • 未定義の$meta_keyに対して適切に機能しない場合があります。

関連機能: