プラグインCustom Post Type UIのcptui_post_register_post_typesアクションの使用方法・解説

概要

cptui_post_register_post_types アクションは、WordPress の Custom Post Type UI プラグインが投稿タイプを登録する際に使用されるフックです。このフックを利用することで、カスタム投稿タイプをさらに拡張したり、特別な設定を追加することが可能になります。具体的には、次のような機能を実装する際によく使われます。

  1. カスタム投稿タイプにカスタムメタフィールドを追加
  2. 特定のユーザーロールへのビュー権限の割り当て
  3. カスタム分類(タクソノミー)の追加
  4. 投稿タイプに独自のサポート機能を追加(例: アイキャッチ画像、抜粋など)
  5. REST API 用のエンドポイント拡張
  6. 投稿タイプの表示順序の変更

構文

add_action( 'cptui_post_register_post_types', 'your_function_name' );

パラメータ

  • cptui_post_register_post_types には引数はありません。

戻り値

  • このアクションは戻り値を持たず、主に他の処理を行うためのフックとして機能します。

バージョン情報

  • Custom Post Type UI のバージョン: 1.10.0 以上
  • WordPress のバージョン: 4.0 以上

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

アクション名 使用可能性
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: カスタムメタフィールドの追加

add_action( 'cptui_post_register_post_types', function() {
    register_post_meta( 'your_custom_post_type', 'custom_meta_key', [
        'type' => 'string',
        'description' => 'A custom meta field for this post type',
        'single' => true,
        'show_in_rest' => true,
    ] );
} );

このコードは、カスタム投稿タイプのためにカスタムメタフィールド(custom_meta_key)を登録するものです。

出典: https://developer.wordpress.org/reference/functions/register_post_meta/

サンプルコード 2: 権限の割り当て

add_action( 'cptui_post_register_post_types', function() {
    add_post_type_support( 'your_custom_post_type', 'author' );
} );

このコードは、カスタム投稿タイプに対して著者情報のサポートを追加するものです。

出典: https://developer.wordpress.org/reference/functions/add_post_type_support/

サンプルコード 3: カスタム分類の追加

add_action( 'cptui_post_register_post_types', function() {
    register_taxonomy( 'custom_taxonomy', 'your_custom_post_type', [
        'label' => 'Custom Taxonomy',
        'hierarchical' => true,
    ] );
} );

このコードは、カスタム投稿タイプに独自のカスタム分類(タクソノミー)を追加するものです。

出典: https://developer.wordpress.org/reference/functions/register_taxonomy/

サンプルコード 4: 独自のサポート機能の追加

add_action( 'cptui_post_register_post_types', function() {
    add_post_type_support( 'your_custom_post_type', 'thumbnail' );
} );

このコードは、カスタム投稿タイプにアイキャッチ画像のサポートを追加するものです。

出典: https://developer.wordpress.org/reference/functions/add_post_type_support/

サンプルコード 5: 投稿タイプの表示順序の変更

add_action( 'cptui_post_register_post_types', function() {
    add_filter( 'the_posts', function( $posts ) {
        // 投稿タイプの並び順を設定
        usort( $posts, function( $a, $b ) {
            return $a->menu_order <=> $b->menu_order;
        });
        return $posts;
    });
} );

このコードは、カスタム投稿タイプの表示順序を変更するためのフィルターを追加します。

出典: https://developer.wordpress.org/reference/functions/usort/

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


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