شرطی کردن درگاه پرداخت ووکامرس روی دسته بندی
شرطی کردن درگاه پرداخت این روز ها یکی از چالش برای سایت های فروشگاهی می باشد که چطور محصولات یک دسته بندی را در درگاه پرداخت ببندند یا چطور فروش آن را باز کنند. ما در این مقاله آموزشی به شما یاد خواهیم داد که چگونه این کار را برای سایت خود انجام دهید.
پیشنهادی: آموزش افزونه رنگ مث
اضافه کردن کد به Functions.php قالب خود
کد های که در پایین برای شما قرار میدهیم باید در بخش Functions.php قالب وردپرس خود اضافه کنید، بهتر است در قالب چایلد خود از آن استفاده کنید تا اگر قالب اصلی خود را بروزرسانی کردید کد ها برای شما پاک نشود.
/**
* @snippet Conditional Payment Gateway
* @how-to Get webkhani.com FREE
* @author miladkhani
*/
add_filter('woocommerce_available_payment_gateways', 'custom_add_gateway_for_specific_categories');
function custom_add_gateway_for_specific_categories($available_gateways) {
if (is_admin()) return $available_gateways;
$specific_category_ids = array(123, 456, 789); // شناسههای دستهبندیها
$additional_gateway_id = 'gateway_id'; // شناسه درگاه
$category_in_cart = false;
foreach (WC()->cart->get_cart() as $cart_item) {
$product_id = $cart_item['product_id'];
if (has_term($specific_category_ids, 'product_cat', $product_id)) {
$category_in_cart = true;
break;
}
}
if ($category_in_cart) {
if (isset(WC()->payment_gateways()->payment_gateways()[$additional_gateway_id])) {
$available_gateways[$additional_gateway_id] = WC()->payment_gateways()->payment_gateways()[$additional_gateway_id];
}
} else {
if (isset($available_gateways[$additional_gateway_id])) {
unset($available_gateways[$additional_gateway_id]);
}
}
return $available_gateways;
}
مهم:قبل از درج کد در مسیر مسیر Functions.php حتما از وبسایت خود بکاب بگیرید.



نظرات و پرسشهای شما
شماره تلفن فقط برای پیگیری پشتیبانی استفاده میشود و در سایت نمایش داده نمیشود.
اولین نفر باشید و تجربه یا سؤال خود را درباره این مقاله بنویسید.