WooCommerce 管理者注文リストにカスタム列を追加する
WooCommerce では、管理者注文リスト ページをカスタマイズして、関連する項目を表示する追加の列を含めることができます。注文に関する情報。
注文リストへの列の追加
WooCommerce の注文リストにカスタム列を追加するには、テンプレート ファイルを変更する必要があります。
/wp-content/plugins/woocommerce/includes/admin/views/html-order-list.php
manage_shop_order_posts_custom_column 関数内で、$column パラメーターに基づいてカスタム列の内容を定義できます。たとえば、注文重量を表示する列を追加するには、次のコードを使用できます。
case 'weight': $order = wc_get_order($post_id); $weight = $order->get_weight(); echo $weight . ' kg'; break;
特定の場所に列を追加
位置を指定できますmanage_edit-shop_order_columns フィルターを変更してカスタム列を変更します。このフィルタを使用すると、既存の列の順序を変更し、特定の場所にカスタム列を挿入できます。
たとえば、「Actions」列の前に「My Column」という名前のカスタム列を挿入するには、次のコマンドを使用します。コード:
add_filter('manage_edit-shop_order_columns', 'reorder_admin_order_columns'); function reorder_admin_order_columns($columns) { $reordered_columns = array(); foreach ($columns as $key => $column) { $reordered_columns[$key] = $column; if ($key == 'order_status') { $reordered_columns['my-column'] = 'My Column'; } } return $reordered_columns; }
High-Performance Order Storage (HPOS)
WooCommerce 8.2 以降、新規インストールでは High-Performance Order Storage (HPOS) がデフォルトで有効になります。 。これには、カスタム列を追加するための少し異なるアプローチが必要です。
add_filter('manage_woocommerce_page_wc-orders_columns', 'reorder_admin_order_hpos_columns'); function reorder_admin_order_hpos_columns($columns) { $reordered_columns = array(); foreach ($columns as $key => $column) { $reordered_columns[$key] = $column; if ($key == 'order_status') { $reordered_columns['my-column'] = 'My Column'; } } return $reordered_columns; } add_action('manage_woocommerce_page_wc-orders_custom_column', 'display_admin_order_hpos_column_content', 10, 2); function display_admin_order_hpos_column_content($column, $order) { switch ($column) { case 'my-column': // Get custom order metadata $value = $order->get_meta('_the_meta_key'); if (!empty($value)) { echo $value; } else { echo '<small>(<em>no value</em>)</small>'; } break; } }
これらのコード変更により、管理注文リスト ページにカスタム列を追加できるようになり、注文管理における追加の洞察と柔軟性が得られます。
以上がWooCommerce 管理者の注文リストにカスタム列を追加するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。