私のカスタム投稿名は "employee"です。
これがadminカラムを作成してデータを投入するためのコードです。
列は作成されましたが、入力されていません。また、アクションフックの "10、2"の意味は何ですか? N.B.場所と年齢の値はカスタムメタボックスから取得されます。
add_filter( 'manage_employee_posts_columns', 'set_custom_edit_employee_columns' );
add_action( 'manage_employee_posts_custom_column' , 'custom_employee_column', 10, 2 );
function set_custom_edit_employee_columns($columns) {
unset( $columns['location'] );
$columns['location'] = __( 'Location', 'tm_cp' );
$columns['age'] = __( 'Age', 'tm_cp' );
return $columns;
}
function custom_employee_column( $column, $post_id ) {
switch ( $column ) {
case 'location' :
echo get_post_meta( $post_id , 'location' , true );
break;
case 'age' :
echo get_post_meta( $post_id , 'age' , true );
break;
}
}
10が優先順位、2が2つの変数が関数に渡されることを意味します($ column、$ post_id)。問題はget_post_meta
を直接エコーしようとしていると思います。これを試して:
function custom_employee_column( $column, $post_id ) {
switch ( $column ) {
case 'location' :
$metaData = get_post_meta( $post_id , 'location' , true );
echo $metaData;
break;
case 'age' :
$metaData = get_post_meta( $post_id , 'age' , true );
echo $metaData;
break;
}
}