似乎找不出PHP代码来在woocommcerce orders管理页面上添加一个新列来显示客户用户角色?
谢谢你的时间达伦
Strugglinjg来获得我找到的任何PHP代码片段
发布于 2022-12-01 10:38:49
下面是可以添加到functions.php中的代码片段:
/**
* Add custom column.
*
* @param array $columns Columns.
* @return array
*/
function set_custom_edit_shop_order_columns( $columns ) {
$columns['user_role'] = __( 'Role', 'your-text-domain' );
return $columns;
}
add_filter( 'manage_shop_order_posts_columns', 'set_custom_edit_shop_order_columns', 100, 1 );
/**
* Add data to custom column.
*
* @param string $column Column slug.
* @param id $post_id Post ID.
*/
function custom_shop_order_column( $column, $post_id ) {
if ( 'user_role' === $column ) {
$order_user = get_post_meta( $post_id, '_customer_user', true );
if ( ! empty( $order_user ) ) {
$user = get_user_by( 'ID', $order_user );
if ( ! empty( $user ) ) {
echo implode( ', ', ( array ) $user->roles );
}
}
}
}
add_action( 'manage_shop_order_posts_custom_column', 'custom_shop_order_column', 100, 2 );只有在没有选择高性能订单存储(HPOS)的情况下,这才能工作,否则您可能不得不调整custom_shop_order_column()方法,以便从新的自定义order元表中检索数据。
https://stackoverflow.com/questions/74631120
复制相似问题