반응형
woocommerce orders.php 열을 수정합니다.
Woocommerce orders.php 테이블의 열을 수정하려고 합니다.TOTAL 컬럼과 DATE 컬럼을 삭제하고 저희 스토어 고유의 커스텀 정보를 포함한 새로운 컬럼을 추가하고 싶습니다.
다음 기능은 이전에는 기능했지만 Woocommerce 2.6 이후 폐지되었습니다.2.6 이후에 이 테이블에 열을 삭제/추가하는 방법을 아는 사람이 있습니까?
function wc_get_account_orders_columns() {
$columns = apply_filters( 'woocommerce_account_orders_columns', array(
'order-number' => __( 'Order', 'woocommerce' ),
'order-date' => __( 'Date', 'woocommerce' ),
'order-status' => __( 'Status', 'woocommerce' ),
'order-total' => __( 'Total', 'woocommerce' ),
'order-actions' => ' ',
) );
// Deprecated filter since 2.6.0.
return apply_filters( 'woocommerce_my_account_my_orders_columns', $columns );
}
내 친구가 이걸 도와줬어.이 기능은 다른 사람이 유용하다고 생각할 경우에 사용할 수 있습니다.
function new_orders_columns( $columns = array() ) {
// Hide the columns
if( isset($columns['order-total']) ) {
// Unsets the columns which you want to hide
unset( $columns['order-number'] );
unset( $columns['order-date'] );
unset( $columns['order-status'] );
unset( $columns['order-total'] );
unset( $columns['order-actions'] );
}
// Add new columns
$columns['order-number'] = __( 'Reserva', 'Text Domain' );
$columns['reservation-date'] = __( 'Para el día', 'Text Domain' );
$columns['reservation-people'] = __( 'Seréis', 'Text Domain' );
$columns['order-status'] = __( 'Estado de la reserva', 'Text Domain' );
$columns['order-actions'] = __( ' ', 'Text Domain' );
return $columns;
}
add_filter( 'woocommerce_account_orders_columns', 'new_orders_columns' );
기존 컬럼 사이에 컬럼의 순서를 변경하거나 새로운 컬럼을 삽입하는 경우를 제외하고 모든 컬럼의 설정을 해제한 후 다시 설정할 필요는 없습니다.
다른 답변에서는 컬럼에 커스텀 정보를 입력하는 방법에 대해서는 언급하지 않습니다.따라서 완전한 알고리즘은 다음과 같습니다.
순서 1. 추가 또는 삭제
add_filter( 'manage_edit-shop_order_columns','your_function_name');
function your_function_name($columns)
{
// to remove just use unset
unset($columns['order_total']); // remove Total column
unset($columns['order_date']); // remove Date column
// now it is time to add a custom one
$columns['custom_column'] = "Column title";
return $columns;
}
2단계. 데이터로 채우기
add_action( 'manage_shop_order_posts_custom_column' , 'your_function_name2' );
function your_function_name2( $column ) {
global $the_order; // you can use the global WP_Order object here
// global $post; // is also available here
if( $column == 'custom_column' ) {
// do stuff, ex: get_post_meta( $post->ID, 'key', true );
}
}
이게 도움이 될 거야
add_filter( 'manage_edit-shop_order_columns','your_function_name',10 );
function your_function_name($columns)
{
unset($columns['order_total']);
unset($columns['order_date']);
return $columns;
}
언급URL : https://stackoverflow.com/questions/40092967/modify-woocommerce-orders-php-columns
반응형
'programing' 카테고리의 다른 글
WooCommerce가 카트에서 프로그래밍 방식으로 삭제 (0) | 2023.03.27 |
---|---|
Angular의 재사용 가능한 구성 요소JS (0) | 2023.03.27 |
구성 요소 정의에 표시 이름 react/display-name이 없습니다. (0) | 2023.03.27 |
MVC의 Ajax.BeginForm을 사용하여 파일을 업로드합니다. (0) | 2023.03.27 |
반응 폼 검증:처음에 송신 버튼을 무효로 하는 방법 (0) | 2023.03.27 |