Estás viendo

Cómo mostrar los productos comprados por el cliente como nueva columna en la lista de pedidos

Con este snippet puedes mostrar los productos de cada pedido en su fila correspondiente.

/* Columna de productos en la lista de pedidos */
function ayudawp_columna_productos_lista_pedidos_cliente($columns) {
    $new_columns = array();
    foreach($columns as $key => $name) {
        $new_columns[$key] = $name;
        if ('order-total' === $key) {
            $new_columns['order-products'] = __('Productos', 'textdomain');
        }
    }
    return $new_columns;
}
add_filter('woocommerce_my_account_my_orders_columns', 'ayudawp_columna_productos_lista_pedidos_cliente');

function ayudawp_datos_productos_columna_pedido($order) {
    foreach($order - > get_items() as $item_id => $item) {
        $product = apply_filters('woocommerce_order_item_product', $order - > get_product_from_item($item), $item);
        $is_visible = $product && $product - > is_visible();
        $product_permalink = apply_filters('woocommerce_order_item_permalink', $is_visible ? $product - > get_permalink($item) : '', $item, $order);
        echo apply_filters('woocommerce_order_item_name', $product_permalink ? sprintf('<p><a href="%s">%s</a>', $product_permalink, $item['name']) : $item['name'], $item, $is_visible);
        echo apply_filters('woocommerce_order_item_quantity_html', ' <strong class="product-quantity">'.sprintf('&times; %s', $item['qty']).
            '</strong></p>', $item);
    }
}
add_action('woocommerce_my_account_my_orders_column_order-products', 'ayudawp_datos_productos_columna_pedido');

Herramientas

  • WooCommerce

    El plugin para crear tiendas online por excelencia. Tanto de productos físicos como digitales. Es la base para prácticamente cualquier proyecto web que acepte pagos online.