如果在woocommerce中没有订单,则显示消息

时间:2015-11-22 10:30:12

标签: function woocommerce hook message orders

如果客户没有我希望展示的订单,我想在我的帐户中显示一条消息"目前没有订单"。 我猜这里有一个我可以用来挂钩的功能吗? 有一个很好的搜索,无法找到任何东西让我开始。 感谢。

2 个答案:

答案 0 :(得分:0)

this tutorial进行修改我认为这样可行:

function wc_get_customer_orders() {

    // Get all customer orders
    $customer_orders = get_posts( array(
        'numberposts' => 1,
        'meta_key'    => '_customer_user',
        'meta_value'  => get_current_user_id(),
        'post_type'   => wc_get_order_types(),
        'post_status' => array_keys( wc_get_order_statuses() ),
    ) );

    $customer = wp_get_current_user();

    // Text for our message
    $notice_text = sprintf( 'Hey %1$s 😀 We noticed you haven\'t placed any orders with us.', $customer->display_name );

    // Display our notice if the customer has no orders
    if ( count( $customer_orders ) == 0 ) {
        wc_print_notice( $notice_text, 'notice' );
    }
}
add_action( 'woocommerce_before_my_account', 'wc_get_customer_orders' );

基本上,在帐户页面上,我们通过当前登录的用户查询单个订单。如果我们没有收到订单,我们会显示通知。

答案 1 :(得分:0)

将my-orders.php复制到本地文件夹并添加了一个else子句:

else{
    echo "No orders";
    }

可以使用WC css

设置样式