概要
cptui_before_post_type_listing アクションは、Custom Post Type UI プラグインにおいて、カスタム投稿タイプのリスト表示前に実行されるフックです。このアクションを使用すると、カスタム投稿タイプの Listing ページにおいて、特定の処理やカスタマイズを実施できます。一般的には以下のような機能を実装する際に使用されます。
- 投稿タイプの情報の表示
- カスタムフィルター、またはソートオプションの追加
- 特定の条件に基づいたスタイルやスクリプトの読み込み
- 投稿タイプのメタデータのカスタマイズ
- 管理画面における通知メッセージの追加
- カスタムアクションボタンの追加
このアクションは、Custom Post Type UI のバージョン 1.0 以上、及び WordPress のバージョン 4.0 以上で使用可能です。
構文
add_action('cptui_before_post_type_listing', 'custom_function_name');
パラメータ
cptui_before_post_type_listing アクションには特定のパラメータはありません。
戻り値
このアクション自体は値を返さず、他の処理を実行するためのフックとして機能します。
サンプルコード
サンプルコード1: 投稿タイプのメタ情報を表示
このコードは、カスタム投稿タイプのリストにメタ情報を追加します。
add_action('cptui_before_post_type_listing', function() {
echo '<h3>あなたのカスタム投稿タイプ一覧</h3>';
});
サンプルコード2: 特定のスタイルを読み込む
このコードは、カスタム投稿タイプのリスト表示前にスタイルを追加します。
add_action('cptui_before_post_type_listing', function() {
echo '<style>
body { background-color: #f0f0f0; }
</style>';
});
サンプルコード3: 複数の投稿タイプを表示
このコードは、指定したカスタム投稿タイプをリスト形式で表示します。
add_action('cptui_before_post_type_listing', function() {
$post_types = ['book', 'movie'];
echo '<ul>';
foreach ($post_types as $type) {
echo '<li>' . esc_html($type) . '</li>';
}
echo '</ul>';
});
サンプルコード4: ユーザーにメッセージを表示
このコードは、特定の条件に基づいて管理者にメッセージを表示します。
add_action('cptui_before_post_type_listing', function() {
if(current_user_can('administrator')) {
echo '<div class="notice notice-info"><p>管理者のための情報です。</p></div>';
}
});
サンプルコード5: カスタムアクションボタンを追加
このコードは、リスト表示前にカスタムアクションボタンを追加します。
add_action('cptui_before_post_type_listing', function() {
echo '<button class="button">新規投稿タイプを追加</button>';
});
この関数のアクションでの使用可能性
| アクション | 使用例 |
|---|---|
| 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 |