donglu9134 2018-08-03 11:41
浏览 34
已采纳

根据用户=产品作者启用woocommerce支付网关

I'm looking to enable the payment gateway 'cod' based on if the current user is the product author. Basically, when buying his own product, the user should have the additional payment gateway of cash, but obviously only for his own products. We use Dokan to create the vendor site.

My code so far:

add_filter('woocommerce_available_payment_gateways', 'filter_gateways', 1);
function filter_gateways($gateways)
{
   global $woocommerce
   $current_user = wp_get_current_user();
   $users_product = false;
   foreach( WC()->cart->get_cart() as $cart_item_key => $cart_item ){
       $post_obj    = get_post( $cart_item['product_id'] );
       $post_author = $post_obj->post_author;
       if ( is_user_logged_in() && $current_user->ID === $post_author ) $users_product = true;
   }
   if ( $users_product ! = true ) {

       unset($gateways['cod']);

   }
   return $gateways;
}

Anyone know where i'm going wrong?

  • 写回答

1条回答 默认 最新

  • duanlan7239 2018-08-03 12:01
    关注

    There are few PHP syntax errors in your function. Try this instead.

    add_filter('woocommerce_available_payment_gateways', 'filter_gateways', 1);
    function filter_gateways($gateways)
    {
       global $woocommerce;
       $current_user = wp_get_current_user();
       $users_product = false;
       foreach( WC()->cart->get_cart() as $cart_item_key => $cart_item ){
           $post_obj    = get_post( $cart_item['product_id'] );
           $post_author = $post_obj->post_author;
           if ( is_user_logged_in() && $current_user->ID == $post_author ) $users_product = true;
       }
       if ( $users_product != true ) {
           unset($gateways['cod']);
       }
       return $gateways;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 如何解决蓝牙通话音频突发失真问题
  • ¥15 安装opengauss数据库报错
  • ¥15 【急】在线问答CNC雕刻机的电子电路与编程
  • ¥60 在mc68335芯片上移植ucos ii 的成功工程文件
  • ¥15 笔记本外接显示器正常,但是笔记本屏幕黑屏
  • ¥15 Python pandas
  • ¥15 蓝牙硬件,可以用哪几种方法控制手机点击和滑动
  • ¥15 生物医学数据分析。基础课程就v经常唱课程舅成牛逼
  • ¥15 云环境云开发云函数对接微信商户中的分账功能
  • ¥15 空间转录组CRAD遇到问题