2017-07-19 66 views
3

我正在用WordPress + WooCommerce開發電子商務網站。WooCommerce刪除我添加到產品的自定義jQuery代碼簡短說明

我在簡短字段中的某些產品上添加了按鈕,以便快速選擇要添加到購物車中的特定數量的產品(這是因爲我有不同的優惠,例如:「以3 「)。

我在一般的jQuery文件這樣的腳本:

<script> 
    function pack4() { document.getElementById("quantity").value = "4"; } 
    function pack8() { document.getElementById("quantity").value = "8"; } 
</script> 

這是代碼的一個例子,我有一些產品簡述:

<span><strong>4x3 Pack:</strong>TOTAL<strong>$1800</strong></span> 
<button class="select" onclick="pack4()">Select</button> 

一切正常,只要你點擊每個按鈕,訂單數量就會添加相應的數字。

的事情是:每當我的客戶(誰通常編輯產品)點擊簡短描述的文本/視覺瓣時,onclick="pack4()"代碼消失。我猜WordPress/WooCommerce有一些jQuery過濾器可以擦除這類代碼。我需要它停止這樣做,因爲客戶經常編輯事物(當然,他們不知道編碼)。否則,我必須每次重新添加代碼。

我也懷疑WP/WC也會過濾它而不需要點擊這個文本/視覺翻蓋(但我可能是錯的)。

任何人都知道該怎麼辦?
謝謝!

回答

3

最容易和最準確的方法是創建一個自定義簡碼是這樣的:

if(!function_exists('display_product_button_pack')) { 

    function display_product_button_pack($atts) { 

     // Shortcode Attributes 
     $atts = shortcode_atts(
      array(
       'pack' => '4', // default pack is 4 
      ), 
      $atts, 
      'button_pack' 
     ); 

     $output = '<button class="select" onclick="pack'.$atts['pack'].'()">Select</button>'; 

     return $output; 

    } 

    add_shortcode('button_pack', 'display_product_button_pack'); 
} 

代碼放在您的活動子主題(或主題)的function.php文件或也以任何插件文件。

該代碼已經過測試和工作。


用法:

。在你的短代碼,其默認值爲4可選pack說法......

爲了您包8例如,你會將其插入到簡短說明產品編輯器中:

[button_pack pack="8"] 

這將輸出這個網站:

<button class="select" onclick="pack8()">Select</button> 

對於Pack 4的默認參數值已經4你只需要使用這樣的:

[button_pack] 

+0

天才,這是完美的,它的工作!解決了,非常感謝! –

相關問題