
گاهی اوقات نیاز هست قیمت و دکمه خرید برای تمامی کاربران ووکامرس سریع و آنی مخفی شود
۱. مخفی کردن قیمت برای تمام کاربران
برای انجام اینکار کد زیر را به Functions.php قالب اضافه کنید
// مخفی کردن قیمت در صفحات فروشگاه و محصول
add_filter('woocommerce_get_price_html', 'wps_hide_price', 10, 2);
function wps_hide_price($price, $product) {
return '';
}
۲. مخفی کردن قیمت و دکمه افزودن به سبد خرید (حالت کاتالوگ)
// حذف قیمت
add_filter('woocommerce_get_price_html', 'wps_hide_price', 10, 2);
function wps_hide_price($price, $product) {
return '';
}
// حذف دکمه افزودن به سبد خرید در صفحه محصول
remove_action('woocommerce_single_product_summary', 'woocommerce_template_single_add_to_cart', 30);
// حذف دکمه افزودن به سبد خرید در صفحات آرشیو
remove_action('woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart', 10);
۳. نمایش قیمت فقط برای کاربران وارد شده (Login)
add_filter('woocommerce_get_price_html', 'wps_hide_price_guest', 10, 2);
function wps_hide_price_guest($price, $product) {
if (!is_user_logged_in()) {
return '<a href="' . get_permalink(get_option('woocommerce_myaccount_page_id')) . '">برای مشاهده قیمت وارد شوید</a>';
}
return $price;
}
// مخفی کردن دکمه خرید برای مهمان
add_action('init', 'wps_hide_add_to_cart_guest');
function wps_hide_add_to_cart_guest() {
if (!is_user_logged_in()) {
remove_action('woocommerce_single_product_summary', 'woocommerce_template_single_add_to_cart', 30);
remove_action('woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart', 10);
}
}
۴. مخفی کردن قیمت با CSS (سریع اما غیرایمن)
اگر نمیخواهید با کد PHP درگیر شوید، میتوانید این کد را در بخش نمایش > سفارشیسازی > CSS اضافی قرار دهید. دقت کنید که در این روش، قیمت در کد سورس صفحه باقی میماند:
/* مخفی کردن قیمت در تمام صفحات */
.amount {
display: none !important;
}