簡體   English   中英

在 WooCommerce 中隱藏未登錄用戶的特定產品變體

[英]Hide specific product variations from unlogged users in WooCommerce

我試圖為未登錄的訪問者僅隱藏 WooCommerce 中產品的兩個變體之一。變體的 ID 是 139。我不知道如何將 ID(或 slug)添加到這件作品的代碼。

    <?php // Hide WooCommerce variations for non-logged-in users
    function my_theme_hide_price_not_authorized() {
    if ( !is_user_logged_in() ) {
    // Hide variations
    add_filter( 'woocommerce_variation_is_active', 'my_theme_disable_variation', 10 , 2 );
     }
    }

    add_action('init', 'my_theme_hide_price_not_authorized');
    // Hide product variations
    function my_theme_disable_variation() {
    return false;
    }         
      

有人可以幫我嗎?

更新- 要對未登錄的用戶隱藏特定定義的產品變體,請使用以下命令:

add_filter( 'woocommerce_variation_is_visible', 'hide_specific_product_variation', 10, 4 );
function hide_specific_product_variation( $is_visible, $variation_id, $variable_product, $variation ) {
    // Here define the variation(s) ID(s) to hide
    $variations_ids_to_hide = array('139');
    
    // For unlogged user, hide defined variations
    if( ! is_user_logged_in() && in_array($variation_id, $variations_ids_to_hide ) ) {
        return false;
    }
    return $is_visible;
} 

代碼進入活動子主題(或活動主題)的functions.php文件。 它應該有效。

嗨,我有一個產品變體,有 3 個交貨時間段 - 上午 10 點 - 下午 1 點、下午 1 點 - 下午 4 點和下午 4 點到晚上 8 點

是否有可能根據一天的時間隱藏每個變化? 有槽位殘疾,如果他們在交貨時間段外訂購

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM