Dim*_*rah 6 php account wordpress orders woocommerce
Woocommerce 3.5.x 在用户帐户(我的帐户)区域有一个特殊页面,它显示用户以前的订单。
此页面现在默认显示 5 列。
这是 woocommerce Orders 区域的屏幕截图,有 5 列:
我找不到改变这一点的方法。
如何在默认情况下添加新列?
这需要 2 个函数来添加新列
第二个函数钩子是一个复合钩子:需要用第一个函数中设置的列键slug替换的woocommerce_my_account_my_orders_column_{$column_id}
地方{$column_id}
。
第二个函数管理显示的行值,您可以添加例如自定义字段以获取自定义订单元数据值。
编码:
add_filter( 'woocommerce_account_orders_columns', 'add_account_orders_column', 10, 1 );
function add_account_orders_column( $columns ){
$columns['custom-column'] = __( 'New Column', 'woocommerce' );
return $columns;
}
add_action( 'woocommerce_my_account_my_orders_column_custom-column', 'add_account_orders_column_rows' );
function add_account_orders_column_rows( $order ) {
// Example with a custom field
if ( $value = $order->get_meta( '_custom_field' ) ) {
echo esc_html( $value );
}
}
Run Code Online (Sandbox Code Playgroud)
代码位于活动子主题(或活动主题)的 function.php 文件中。测试和工作。
您已完成并将自定义列添加到我的帐户订单表:
如果要在表 html 输出中进行更改,则必须覆盖模板文件:
myaccount/orders.php