概要
cptui_after_post_type_listing
は、WordPressのCustom Post Type UIプラグインで使用される、カスタム投稿タイプのリストが表示された後に実行されるアクションフックです。このフックは、カスタム投稿タイプに関連するさまざまな機能を追加や変更する際に利用されます。一般的な用途としては以下のようなものがあります。
- カスタム投稿タイプのリストにカスタムカラムを追加する
- 投稿タイプの一覧表示にフィルタ機能を追加する
- 一覧ページのデザインを変更する
- 特定の条件に基づいて記事を分類するUIを追加する
- 追加のインフォメーションやメタデータを投稿リストに表示する
- 投稿タイプごとのクイックアクションを追加する
構文
do_action('cptui_after_post_type_listing');
パラメータ
このアクションには特にパラメータはありません。
戻り値
このフック自体は何も戻り値を返しません。フックの実行によって他のプラグインやテーマがどのように動作するかに影響を与えます。
使用可能なプラグインバージョン
Custom Post Type UIのバージョン: 1.0.0以上
使用可能なWordPressバージョン
WordPressのバージョン: 4.0以上
サンプルコード
サンプル1: カスタムカラムの追加
このサンプルコードは、カスタム投稿タイプのリストに「サブタイトル」というカスタムカラムを追加します。
add_action('cptui_after_post_type_listing', function() {
add_filter('manage_your_custom_post_type_columns', function($columns) {
$columns['subtitle'] = 'サブタイトル';
return $columns;
});
add_action('manage_your_custom_post_type_posts_custom_column', function($column, $post_id) {
if ($column == 'subtitle') {
echo get_post_meta($post_id, 'subtitle', true);
}
}, 10, 2);
});
サンプル2: 一覧にフィルタを追加
このサンプルでは、カスタム投稿タイプの一覧にフィルタを追加します。
add_action('cptui_after_post_type_listing', function() {
echo '<select name="custom_filter">';
echo '<option value="">すべての項目</option>';
echo '<option value="value1">フィルタ1</option>';
echo '<option value="value2">フィルタ2</option>';
echo '</select>';
});
サンプル3: 一覧ページのスタイル変更
このサンプルコードは、カスタム投稿タイプの一覧ページにスタイルを追加します。
add_action('cptui_after_post_type_listing', function() {
echo '<style>
.custom-post-type-list { background-color: #f1f1f1; }
</style>';
});
サンプル4: クイックアクションの追加
このサンプルは、カスタム投稿タイプの一覧にクイックアクションを追加します。
add_action('cptui_after_post_type_listing', function() {
add_filter('post_row_actions', function($actions, $post) {
if ($post->post_type == 'your_custom_post_type') {
$actions['custom_action'] = '<a href="#">カスタムアクション</a>';
}
return $actions;
}, 10, 2);
});
サンプル5: メタデータの表示
このサンプルでは、カスタム投稿タイプのリストにメタデータを表示します。
add_action('cptui_after_post_type_listing', function() {
add_filter('the_title', function($title, $post_id) {
if (get_post_type($post_id) == 'your_custom_post_type') {
$meta_value = get_post_meta($post_id, 'your_meta_key', true);
$title .= ' (' . esc_html($meta_value) . ')';
}
return $title;
}, 10, 2);
});
この関数のアクションでの使用可能性
アクション | 使用可能性 |
---|---|
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 |