仅当产品仍然存在时,才在 Woocommerce 管理订单列表中添加产品缩略图

问题描述 投票:0回答:1

我使用 将产品缩略图添加到 Woocommerce 管理订单列表答案代码。它工作正常,但最近我删除了一些产品,因此它们不再存在,这会导致错误。 如果购买的产品已被删除,如何避免错误?

我想我需要额外检查该产品,如果它不存在,请忽略它/留空并移至下一个产品。有什么想法如何才能实现吗?

php wordpress woocommerce
1个回答
0
投票

您可以通过简单地测试

$product
来检查代码中是否存在产品,因为
$item->get_product()
将在永久删除的产品上返回
false

// The data of the new custom column in admin order list
add_action( 'manage_shop_order_posts_custom_column' , 'admin_orders_list_column_content', 10, 2 );
function admin_orders_list_column_content( $column, $post_id ){
    global $the_order;

    if( 'custom_column' === $column ){
        $count = 0;

        // Loop through order items
        foreach( $the_order->get_items() as $item ) {
            $product = $item->get_product(); // The WC_Product Object
            $style   = $count > 0 ? ' style="padding-left:6px;"' : '';
            if ( $product ) {
              // Display product thumbnail
                printf( '<span%s>%s</span>', $style, $product->get_image( array( 50, 50 ) ) );    
                $count++;
            }
        }
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.