管理帖子自定义列未填充元数据框中的数据

时间:2016-02-17 作者:rushdi

我的自定义职位名称是“employee”。

下面是创建和填充管理列的代码。

列已创建,但未填充。还有,动作挂钩中的“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;

    }
}

1 个回复
最合适的回答,由SO网友:Johano Fierra 整理而成

10是优先级,2表示将两个变量传递给函数($column,$post\\u 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;
    }
}

相关推荐

MANAGE_USERS_CUSTOM_COLUMNS筛选器不触发回调函数

我使用以下函数向users表中添加了一些自定义列 public function modify_users_columns( $column_headers ) { //Remove email, role, and posts column unset( $column_headers[\'email\'], $column_headers[\'role\'], $column_headers[\'posts\'] ); //Add sponsor