在Woocommerce Thankyou页面上添加产品缩略图

时间:2018-12-04 17:00:15

标签: php wordpress image woocommerce orders

在woocommerce中,在“已收到订单”页面(“谢谢”页面)上,产品图像未显示在订单项中。

如何在“已收到订单”页面上的订单项中显示产品图片?
是否有可用的挂钩?
还是我必须覆盖模板order/order-details-item.php文件?

感谢您的帮助。

2 个答案:

答案 0 :(得分:2)

要在“已收到订单”页面上的订单项中显示缩略图(谢谢),您将使用:

// Display the product thumbnail in order received page
add_filter( 'woocommerce_order_item_name', 'order_received_item_thumbnail_image', 10, 3 );
function order_received_item_thumbnail_image( $item_name, $item, $is_visible ) {
    // Targeting order received page only
    if( ! is_wc_endpoint_url('order-received') ) return $item_name;

    // Get the WC_Product object (from order item)
    $product = $item->get_product();

    if( $product->get_image_id() > 0 ){
        $product_image = '<span style="float:left;display:block;width:56px;">' . $product->get_image(array(48, 48)) . '</span>';
        $item_name = $product_image . $item_name;
    }

    return $item_name;
}

代码进入您的活动子主题(或活动主题)的function.php文件中。经过测试,可以正常工作。

enter image description here

答案 1 :(得分:0)

非常感谢,多年来我一直在努力解决这个问题!

是否有办法使此方法仅适用于已暂停或使用bacs付款选项下达的订单?

我已经尝试了以下方法(以及bacs支付网关的各种替代方法),但无法使其正常工作。

if( ! is_wc_endpoint_url('order-received') && ( 'on-hold' == $order->status ) )

任何帮助将不胜感激。 再次感谢!