在 WordPress 的管理员用户列表自定义列中显示用户元数据值
Display user meta data values in admin user list custom columns in WordPress
对于 Woocommerce,在 的帮助下,我在后端(管理员)用户列表中创建了一些自定义列:
在数据库中,有一些名为 billing_vatnr
和 billing_company
的 meta_key
值来自 WooCommerce 注册表并保存在 wp_usermeta
table 中。
我想弄清楚的是如何为这些元键显示相应的 meta_value
并在每个用户各自的列中显示它们。
也就是说,在VAT Nr字段中,应该显示meta key的内容billing_vatnr
,如果没有内容,则显示N/A
. billing_company
.
的公司名称列相同
目前为止我试过的是:
add_filter('manage_users_custom_column', 'vatnr_status_data', 10, 3);
function vatnr_status_data( $value, $column_name, $user_id ) {
if ( 'account_vatnr' == $column_name ) {
if( $billing_vatnr = get_user_meta( $user_id, 'billing_vatnr', true )) {
echo $billing_vatnr; } else { echo "N/A"; }
}
return $value;
}
但是没用。
以下是我添加的不同列:
// creating the columns
add_action('manage_users_columns','account_verification_status_and_company_columns');
function account_verification_status_and_company_columns($column_headers) {
unset($column_headers['posts']);
$column_headers['account_verification'] = __('Verification Status');
$column_headers['account_vatnr'] = __('VAT Nr');
$column_headers['account_companyname'] = __('Company Name');
return $column_headers;
}
// fetching the verification status, thanks to LoicTheAztec
add_filter('manage_users_custom_column', 'user_account_verification_status_data', 10, 3);
function user_account_verification_status_data( $value, $column_name, $user_id ) {
if ( 'account_verification' == $column_name ) {
if( get_user_meta( $user_id, 'is_activated', true ) == 1 ) {
$value = '<span style="color:green;font-weight:bold;">Verified</span>';
} else {
$value = '<span class="na" style="color:grey;"><em>Not Verified</em></span>';
}
}
return $value;
}
非常感谢任何帮助。
尝试以下稍微重新访问的代码,并为 account_vatnr
和 account_companyname
其他自定义字段添加了一些内容:
// Add custom columns to Admin users list
add_action('manage_users_columns', 'add_custom_users_columns', 10, 1 );
function add_custom_users_columns( $columns ) {
unset($columns['posts']);
$columns['account_verification'] = __('Verification Status');
$columns['account_vatnr'] = __('VAT Nr');
$columns['account_companyname'] = __('Company Name');
return $columns;
}
// fetching the verification status, thanks to LoicTheAztec
add_filter('manage_users_custom_column', 'add_data_to_custom_users_columns', 10, 3);
function add_data_to_custom_users_columns( $value, $column_name, $user_id ) {
if ( 'account_verification' == $column_name ) {
if( get_user_meta( $user_id, 'is_activated', true ) == 1 ) {
$value = '<span style="color:green;font-weight:bold;">Verified</span>';
} else {
$value = '<span class="na" style="color:grey;"><em>Not Verified</em></span>';
}
} elseif( 'account_vatnr' == $column_name ) {
if( $vat_nr = get_user_meta( $user_id, 'account_vatnr', true ) ) {
$value = '<span style="color:green;font-weight:bold;">' . $vat_nr . '</span>';
} else {
$value = '<span class="na" style="color:grey;"><em>N/a</em></span>';
}
} elseif( 'account_companyname' == $column_name ) {
if( $company = get_user_meta( $user_id, 'account_companyname', true ) ) {
$value = '<span style="color:green;font-weight:bold;">' . $company . '</span>';
} else {
$value = '<span class="na" style="color:grey;"><em>N/a</em></span>';
}
}
return $value;
}
代码进入您的活动子主题(活动主题)的 functions.php 文件。已测试并有效。
来自 wp_usermeta
数据库中的这个注册数据 table:
您将在自定义列的管理员用户列表中获得以下显示:
对于 Woocommerce,在
在数据库中,有一些名为 billing_vatnr
和 billing_company
的 meta_key
值来自 WooCommerce 注册表并保存在 wp_usermeta
table 中。
我想弄清楚的是如何为这些元键显示相应的 meta_value
并在每个用户各自的列中显示它们。
也就是说,在VAT Nr字段中,应该显示meta key的内容billing_vatnr
,如果没有内容,则显示N/A
. billing_company
.
目前为止我试过的是:
add_filter('manage_users_custom_column', 'vatnr_status_data', 10, 3);
function vatnr_status_data( $value, $column_name, $user_id ) {
if ( 'account_vatnr' == $column_name ) {
if( $billing_vatnr = get_user_meta( $user_id, 'billing_vatnr', true )) {
echo $billing_vatnr; } else { echo "N/A"; }
}
return $value;
}
但是没用。
以下是我添加的不同列:
// creating the columns
add_action('manage_users_columns','account_verification_status_and_company_columns');
function account_verification_status_and_company_columns($column_headers) {
unset($column_headers['posts']);
$column_headers['account_verification'] = __('Verification Status');
$column_headers['account_vatnr'] = __('VAT Nr');
$column_headers['account_companyname'] = __('Company Name');
return $column_headers;
}
// fetching the verification status, thanks to LoicTheAztec
add_filter('manage_users_custom_column', 'user_account_verification_status_data', 10, 3);
function user_account_verification_status_data( $value, $column_name, $user_id ) {
if ( 'account_verification' == $column_name ) {
if( get_user_meta( $user_id, 'is_activated', true ) == 1 ) {
$value = '<span style="color:green;font-weight:bold;">Verified</span>';
} else {
$value = '<span class="na" style="color:grey;"><em>Not Verified</em></span>';
}
}
return $value;
}
非常感谢任何帮助。
尝试以下稍微重新访问的代码,并为 account_vatnr
和 account_companyname
其他自定义字段添加了一些内容:
// Add custom columns to Admin users list
add_action('manage_users_columns', 'add_custom_users_columns', 10, 1 );
function add_custom_users_columns( $columns ) {
unset($columns['posts']);
$columns['account_verification'] = __('Verification Status');
$columns['account_vatnr'] = __('VAT Nr');
$columns['account_companyname'] = __('Company Name');
return $columns;
}
// fetching the verification status, thanks to LoicTheAztec
add_filter('manage_users_custom_column', 'add_data_to_custom_users_columns', 10, 3);
function add_data_to_custom_users_columns( $value, $column_name, $user_id ) {
if ( 'account_verification' == $column_name ) {
if( get_user_meta( $user_id, 'is_activated', true ) == 1 ) {
$value = '<span style="color:green;font-weight:bold;">Verified</span>';
} else {
$value = '<span class="na" style="color:grey;"><em>Not Verified</em></span>';
}
} elseif( 'account_vatnr' == $column_name ) {
if( $vat_nr = get_user_meta( $user_id, 'account_vatnr', true ) ) {
$value = '<span style="color:green;font-weight:bold;">' . $vat_nr . '</span>';
} else {
$value = '<span class="na" style="color:grey;"><em>N/a</em></span>';
}
} elseif( 'account_companyname' == $column_name ) {
if( $company = get_user_meta( $user_id, 'account_companyname', true ) ) {
$value = '<span style="color:green;font-weight:bold;">' . $company . '</span>';
} else {
$value = '<span class="na" style="color:grey;"><em>N/a</em></span>';
}
}
return $value;
}
代码进入您的活动子主题(活动主题)的 functions.php 文件。已测试并有效。
来自 wp_usermeta
数据库中的这个注册数据 table:
您将在自定义列的管理员用户列表中获得以下显示: