is_protected_meta()


is_protected_meta()は、WordPressで特定のメタデータが保護されているかどうかを確認するための関数です。保護されたメタデータは、ユーザーが編集できないように設定されています。

構文

is_protected_meta( string $meta_key, string $meta_type = 'post' );

引数の説明:

  • $meta_key(string) — チェックするメタデータのキー。
  • $meta_type(string) — メタデータのタイプ。デフォルトは’post’。

例1: メタデータが保護されているか確認する

以下のコードは、指定されたメタキーが保護されているかどうかを確認します。

<?php if ( is_protected_meta( '_edit_lock', 'post' ) ) { echo 'このメタデータは保護されています。'; } ?>

例2: カスタムメタタイプでの使用

カスタムメタタイプに対して保護されているかどうかを確認します。

<?php if ( is_protected_meta( 'custom_key', 'custom_type' ) ) { echo 'このメタデータは保護されています。'; } ?>

例3: メタデータの保護状態を動的にチェック

動的にメタキーを指定して保護状態を確認します。

<?php $meta_key = get_post_meta( get_the_ID(), 'key', true ); if ( is_protected_meta( $meta_key ) ) { echo '保護されています。'; } ?>

例4: 複数のメタキーをチェック

複数のメタキーに対して保護状態を確認します。

<?php $meta_keys = array( '_edit_lock', '_edit_last' ); foreach ( $meta_keys as $key ) { if ( is_protected_meta( $key ) ) { echo $key . 'は保護されています。'; } } ?>

例5: メタデータの保護状態をフィルタリング

is_protected_metaフィルタを使用して、保護状態をカスタマイズします。

<?php add_filter( 'is_protected_meta', function( $protected, $meta_key, $meta_type ) { if ( 'custom_key' === $meta_key ) { return true; } return $protected; }, 10, 3 ); ?>

例6: メタデータの保護状態をユーザーに表示

保護されたメタデータの状態をユーザーに表示します。

<?php $meta_key = '_edit_lock'; $is_protected = is_protected_meta( $meta_key ) ? '保護されています' : '保護されていません'; echo 'メタキー: ' . $meta_key . ' は ' . $is_protected; ?>

注意点

  • 保護されたメタデータは、ユーザーが直接編集できないため、重要な設定に使用されます。
  • カスタムメタタイプを使用する場合は、正しいタイプを指定してください。

関連機能: