今天我們來看看 WooCommerce Checkout,特別是如果某些類別 ID 在購物車中,如何禁用支付閘道器。搏一搏!
禁用特定類別的付款方式
/** * @snippet Disable Payment Method for Specific Category * @sourcecode https://businessbloomer.com/?p=19892 * @author Rodolfo Melogli * @testedwith WooCommerce 2.5.2 */ add_filter('woocommerce_available_payment_gateways','bbloomer_unset_gateway_by_category'); function bbloomer_unset_gateway_by_category($available_gateways){ global $woocommerce; $category_IDs = array(316,317); foreach ($woocommerce->cart->cart_contents as $key => $values ) { $terms = get_the_terms( $values['product_id'], 'product_cat' ); foreach ($terms as $term) { if(in_array($term->term_id, $category_IDs)){ unset( $available_gateways['cod'] ); break; } break; } } return $available_gateways; }
可以在哪裡新增此程式碼?
您可以將 PHP 程式碼片段放置在主題或子主題的 functions.php 檔案的底部(如果是 CSS 程式碼,請新增到主題的 style.css 檔案底部),修改之前建議先備份原始檔案,若出現錯誤請先刪除此程式碼。
這段程式碼是否正常可用?
或者是您有更好的解決方案想要分享?請到薇曉朵 WooCommerce 中文論壇留言告知,我們希望可以幫到更多國內的 WooCommerce 使用者也希望您的參與。
需要關於 WooCommerce 的幫助?
請觀看我們提供的免費影片教程或到薇曉朵 WooCommerce 中文論壇提問,會有專業技術團隊提供相關幫助。