pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

可變產品選擇器:獲取實時選定值

Variable product selectors: Getting the live selected values(可變產品選擇器:獲取實時選定值)
本文介紹了可變產品選擇器:獲取實時選定值的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

限時送ChatGPT賬號..

在 WooCommerce 中,使用以下代碼在簡單和可變產品的產品價格后添加自定義標簽:

add_filter('woocommerce_variation_price_html','prices_custom_labels', 10, 2 );add_filter('woocommerce_price_html','prices_custom_labels', 10, 2);函數價格_custom_labels( $price, $product ){//在此處設置您的自定義標簽名稱$per_dozen = ' '.__('每打', 'woocommerce');$per_case = ' '.__('每箱 (20 打)', 'woocommerce');//1) 可變產品if ($product->product_type != 'simple' && $product->variation_id ) {//獲取變體的現有屬性值數組$variation_attribute_value = $product->variation_data;//這里我們只保留這個數組中的最后一個值$last_variation_attribute_slug_value = ' ' .結束($variation_attribute_value);//在屬性值 slug 中查找單詞 'case'$has_case = strstr($last_variation_attribute_slug_value, 'case');//根據屬性值設置正確顯示的標簽slug如果( $has_case )$attribute_quantity_name_value = $per_case;別的$attribute_quantity_name_value = $per_dozen;//這里是輸出價格 + 自定義標簽$price = '<ins class="highlight">'.woocommerce_price( $product- >regular_price ).$attribute_quantity_name_value.'</ins>';}//2) 簡單的產品別的{//這里是輸出價格 + 自定義默認標簽$price = '<ins class="highlight">'.woocommerce_price( $product- >regular_price ).$per_dozen.'</ins>';}返回 $price;}

但在可變產品中,實時顯示價格中附加的自定義標簽存在問題.我使用的代碼只顯示在每打"實時價格之后.

我需要在自定義數量"選擇器上獲取所選值以在價格后添加正確的標簽:

  • 如果選擇的值為打",我需要在實時價格后顯示每打",
  • 如果選擇的值為一箱(20打)",我需要在實時價格后顯示每箱(20打)".

這個截圖是我對所有情況的實際截圖:

在我的網站上查看此問題<強>特定產品頁面

<塊引用>

因此,我需要獲取屬性數量"選定的值以將正確的標簽附加到實時價格.

有什么幫助嗎?我該怎么做才能讓它發揮作用?

我嘗試了很多代碼,但我無法讓它工作.

解決方案

實現此功能的唯一方法是使用 Javascript/jQuery,但它很復雜,因為 WooCommerce 已經在其上運行了一些 Javascript/Ajax 代碼.

首先,不可能檢測選擇器上的選定客戶選擇,因為 WooCommerce 從 中刪除了 selected" 屬性> html 標簽.

<塊引用>

一旦客戶進行了完整的選擇(因此從該可變產品中選擇了一個變體),Woocommerce 在隱藏的<代碼><輸入>中添加相應的變體 ID 值代碼> html 字段 并顯示相應的價格.

我們的 PHP 代碼將傳遞給 javascript 變體 ID 的數組,用于該可變產品,帶有相應的數量"值. 屬性.

然后我們可以在