Woocmmerce 下訂單時, 根據情況改變訂單狀態

標籤: 

正在查看 3 個帖子:1-3 (共 3 個帖子)
  • 作者
    帖子
  • lmn40227
    參與者
    • 文章數量: 23
    @lmn40227
    樓主

    在無法修復 Woocommerce 偶然性的發生 一個訂單裏 產品出現 2 次, 但客户支付了一次錢. 在這個前提下, 決定在客户下訂單時, 判斷如果客户的訂單裏的 item_name 發生重複的狀態下, 就將訂單的狀態改成 on-hold.

    下面的代碼 是我加在 function 頁面的, 測試的錯誤提示: SyntaxError: Unexpected token < in JSON at position 18,  求大神們指點下 下面代碼哪裏有問題, 萬分感謝

     

    add_filter( ‘woocommerce_cod_process_payment_order_status’, ‘prefix_filter_wc_complete_order_status’, 10, 3 );
    add_filter( ‘woocommerce_payment_complete_order_status’, ‘prefix_filter_wc_complete_order_status’, 10, 3 );

    function prefix_filter_wc_complete_order_status( $status, $order_id, $order ) {
    if( ! $order_id ) return;
    $order = wc_get_order( $order_id );

    $all_products_id = array();
    foreach ($order->get_items() as $item_key => $item ){
    $item_name = $item->get_name();
    $all_products_id[] = $item_name;
    }

    $o_num = count($all_products_id);

    if($o_num == 1){
    return ‘processing’;
    }else{

    $standard = 0;
    for($i=1;$i<$o_num;$i++){
    if($all_products_id[0] == $all_products_id[i]){
    $standard++;
    }
    }

    if($standard > 0){
    return ‘on-hold’;
    }else{
    return ‘processing’;
    }

    }

    詩語
    管理員
    • 文章數量: 5,925
    @feibisi

    沒明白這麼操作的意思,如果是客户下單重複,而且你又只收到一次錢,那麼只有兩種可能,一種是未付款放棄購買,一種是已付款但交易中斷支付平台數據回調沒成功。

    一個訂單裏 產品出現 2 次, 但客户支付了一次錢

    直接限制一個訂單裏只允許加入一個單獨購買產品就行了。

    lmn40227
    參與者
    • 文章數量: 23
    @lmn40227
    樓主

    好的 謝謝

正在查看 3 個帖子:1-3 (共 3 個帖子)
  • 哎呀,回覆話題必需登錄。

話題信息

  • 當前位於:WooCommerce
  • 2 條回覆
  • 2 個參與人
  • 最後回覆:<a href="https://bbs.weixiaoduo.com/users/lmn40227/" title=" 查看 lmn40227 的個人資料" class="bbp-author-link"><span class="bbp-author-name">lmn40227</span></a>
  • 上次活動:<a href="https://bbs.weixiaoduo.com/topic/36441/#post-36472" title=" 回覆至:Woocmmerce 下訂單時, 根據情況改變訂單狀態">4 年、 8 月前</a>