wp_autosave_post_revisioned_meta_fields()


WordPressのwp_autosave_post_revisioned_meta_fields()関数は、リビジョンされた投稿のメタフィールドを自動保存するために使用されます。この関数は、投稿のリビジョンが作成された際に、関連するメタデータも自動的に保存されるようにします。

構文

wp_autosave_post_revisioned_meta_fields( int $post_id, array $meta_fields );

引数の説明:

  • $post_id (int) — 自動保存する投稿のID。
  • $meta_fields (array) — 自動保存するメタフィールドの配列。

例1: 基本的な使用法

この例では、投稿IDとメタフィールドの配列を指定して、自動保存を行います。

wp_autosave_post_revisioned_meta_fields( get_the_ID(), array( 'custom_field_1', 'custom_field_2' ) );

例2: カスタムフィールドを自動保存

カスタムフィールドを自動保存する例です。

wp_autosave_post_revisioned_meta_fields( 123, array( 'my_custom_field' ) );

例3: 複数のメタフィールドを自動保存

複数のメタフィールドを一度に自動保存します。

wp_autosave_post_revisioned_meta_fields( get_the_ID(), array( 'field1', 'field2', 'field3' ) );

例4: 特定の投稿タイプでの使用

特定の投稿タイプでのみ自動保存を行う例です。

if ( get_post_type( get_the_ID() ) === 'page' ) { wp_autosave_post_revisioned_meta_fields( get_the_ID(), array( 'page_custom_field' ) ); }

例5: 条件付きで自動保存

特定の条件を満たした場合にのみ自動保存を行います。

if ( is_user_logged_in() ) { wp_autosave_post_revisioned_meta_fields( get_the_ID(), array( 'logged_in_field' ) ); }

例6: フックを使用した自動保存

フックを使用して自動保存をトリガーします。

add_action( 'save_post', function( $post_id ) { wp_autosave_post_revisioned_meta_fields( $post_id, array( 'hook_field' ) ); } );

例7: メタフィールドの自動保存を無効化

特定のメタフィールドの自動保存を無効化します。

remove_action( 'wp_autosave_post_revisioned_meta_fields', 'wp_autosave_post_revisioned_meta_fields' );

注意点

  • この関数は、リビジョンが有効になっている場合にのみ動作します。
  • メタフィールドの自動保存は、パフォーマンスに影響を与える可能性があります。
  • 自動保存するメタフィールドが多い場合、データベースの負荷が増加する可能性があります。

関連機能: