如何在结账后将现有WooCommerce客户重定向到特定的URL

时间:2021-07-28 作者:Sheldon

我试图找到一种解决方案,在结帐后将现有客户重定向到特定的url。我不确定“谢谢”页面重定向是否足以完成此过程。你能帮忙吗?

1 个回复
SO网友:Steve

以下内容就足够了。只有在订单没有失败的情况下,它才会重定向到您的自定义URL。

add_action( \'woocommerce_thankyou\', \'ii_redirect_thankyou\');
function ii_redirect_thankyou( $order_id ){
    $customer_orders = get_posts( array(
        \'numberposts\' => 2, // getting 2 as by the time this purchase has happened the count will be 1.
        \'meta_key\'    => \'_customer_user\',
        \'meta_value\'  => get_current_user_id(),
        \'post_type\'   => \'shop_order\', // WC orders post type
        \'post_status\' => \'wc-completed\', // Only orders with "completed" status
        \'fields\'      => \'ids\', // Return Ids "completed"
    ) );

    if ( count($customer_orders) > 1 ) {
      $order = wc_get_order( $order_id );
      $url = \'http://example.com\';

      // double check this order has gone through okay and then redirect them
      if ( ! $order->has_status( \'failed\' ) ) {
        wp_safe_redirect( $url );
        exit;
      }
    }
}
函数woocommerce\\u redirect\\u after\\u checkout(){global$wp;if(is\\u checkout()&;!empty($wp->;query\\u vars[\'order-completed\'){$redirect\\u url=\'https://example.com\';wp\\u重定向($redect\\u url);退出;}}

相关推荐

更改wp-admin/plugins.php上统计的插件数量

我已成功地使用从插件页面隐藏我的插件$wp_list_table 然而,顶部的分页仍然将插件列为“所有(3)”等。我成功地改变了$wp_list_table 的数组_pagination_args = total_items.但它仍然在页面顶部呈现插件-“全部(3)”。有什么办法可以解决这个问题吗?我找到了WP_Plugins_List_Table::prepare_items()具有全局$totals 变量,但我不确定我将如何改变这一点,在这个函数中$totals = array(); fore