วิธีเพิ่มคอลัมน์ใหม่ในตารางคำสั่งซื้อ WooCommerce

ตาราง WC orders คืออะไร?

WooCommerce จัดเตรียมตารางพร้อมคำสั่งซื้อทั้งหมดในพื้นที่แดชบอร์ด WP ภายใต้ WooCommerce > Orders.

โดยค่าเริ่มต้นตารางนั้นจะมี 7 คอลัมน์ ได้แก่ คำสั่งซื้อ  วันที่  สถานะ  การเรียกเก็บเงิน  การจัดส่งไปยัง  ยอดรวม  และการดำเนินการ

หากคุณต้องการเพิ่มคอลัมน์ใหม่ในตารางนี้ในพื้นที่ผู้ดูแลระบบ WordPress สามารถทำได้โดยการเพิ่มโค้ด PHP ที่กำหนดเองลงในไฟล์ functions.php ของคุณซึ่งอยู่ในโฟลเดอร์ธีมของคุณ

 

วิธีเพิ่ม billing details  ในตารางคำสั่งซื้อ

ตัวอย่างเช่น คุณจะต้องเพิ่มรายละเอียดการเรียกเก็บเงินในตารางคำสั่งซื้อนี้ คุณจะต้องเปิดไฟล์ functions.php ซึ่งคุณจะพบได้ในโฟลเดอร์ธีมของคุณ (yourdomain.com/wp-content/themes/your-theme/functions.php)

จากนั้นในตอนท้ายของไฟล์นี้คุณจะต้องเพิ่มโค้ด PHP ต่อไปนี้เพื่อเพิ่มคอลัมน์ “ข้อมูลการเรียกเก็บเงิน” ใหม่ที่ท้ายตารางคำสั่งซื้อ:

functions.php

<?php
add_filter( 'manage_edit-shop_order_columns', 'zeninv_add_order_column_to_admin_table' );

function zeninv_add_order_column_to_admin_table( $columns ) {
$columns['billing_details'] = 'Billing Info';
return $columns;
}

add_action( 'manage_shop_order_posts_custom_column', 'zeninv_add_order_column_to_admin_table_content' );

function zeninv_add_order_column_to_admin_table_content( $column ) {

global $post;

if ( 'billing_details' === $column ) {

$order = wc_get_order( $post->ID );

echo $order->get_billing_first_name(); echo " ";
echo $order->get_billing_last_name(); echo "<br />";
echo $order->get_billing_company(); echo "<br />";
echo $order->get_billing_address_1(); echo ", ";
echo $order->get_billing_address_2(); echo "<br />";
echo $order->get_billing_city(); echo ", ";
echo $order->get_billing_state(); echo ", ";
echo $order->get_billing_postcode(); echo ", ";
echo $order->get_billing_country(); echo "<br />";
echo $order->get_billing_email(); echo "<br />";
echo $order->get_billing_phone();

}
}
?>

โค้ดด้านบนจะเพิ่มคอลัมน์ใหม่ที่ส่วนท้ายของคอลัมน์อื่น ๆ ที่มีอยู่ในตารางคำสั่งซื้อ

เราเพิ่มช่องการเรียกเก็บเงินทั้งหมดทีละช่องโดยใช้คำสั่ง PHP echo

และตอนนี้เราได้ผลลัพธ์ที่ต้องการแล้ว:

ใส่ความเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น