گاهی اوقات نیاز هست قیمت و دکمه خرید برای تمامی کاربران ووکامرس سریع و آنی مخفی شود

۱. مخفی کردن قیمت برای تمام کاربران

برای انجام اینکار کد زیر را به 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;
}