子テーマの機能にコードを追加してカスタム投稿IDを取得する方法。次のコードは通常の投稿ではうまく機能しますが、カスタム投稿タイプでは理解できません。
add_filter( 'manage_posts_columns', 'revealid_add_id_column', 5 );
add_action( 'manage_posts_custom_column', 'revealid_id_column_content', 5, 2 );
function revealid_add_id_column( $columns ) {
$columns['revealid_id'] = 'ID';
return $columns;
}
function revealid_id_column_content( $column, $id ) {
if( 'revealid_id' == $column ) {
echo $id;
}
}
add_action( 'manage_posts_custom_column', 'id_data' );
add_filter( 'manage_posts_columns', 'id_column' );
function id_column( $defaults ) {
$defaults['id'] = 'ID';
return $defaults;
}
function id_data( $column_name ) {
global $post;
switch ( $column_name ) {
case 'id':
echo $post->ID;
}
}
カスタム投稿タイプには、対応するフィルタ manage_{$post_type}_posts_columns
と manage_{$post_type}_posts_custom_column
があります。ここで{$post_type}
カスタム投稿名です( $post_type
のregister_post_type
変数)。
あなたがコメントで言ったように、私はあなたのカスタム投稿タイプがestate_property
と呼ばれると思います。
そう:
add_filter( 'manage_estate_property_posts_columns', 'revealid_add_id_column', 5 );
add_action( 'manage_estate_property_posts_custom_column', 'revealid_id_column_content', 5, 2 );
function revealid_add_id_column( $columns ) {
$columns['revealid_id'] = 'ID';
return $columns;
}
function revealid_id_column_content( $column, $id ) {
if( 'revealid_id' == $column ) {
echo $id;
}
}
これはあなたのカスタム投稿タイプにのみ有効です。複数のカスタムタイプをサポートしたい場合は、 manage_posts_custom_column のドキュメントを読んでください。
WordPress Codexから :カスタム投稿タイプに'hierarchical' => true
がある場合、正しいアクションフックは manage_pages_custom_column
です。 .