問題描述
我想通過一個鏈接直接在我的購物車中添加一個變體產品。我使用查詢字符串設置 variation_id 。據我所知,我發送的數據與默認變體產品格式完全相同。
這是我的 single-product 頁面中的代碼:
<a href="<?php%20echo%20esc_url(%20$product->add_to_cart_url()%20);%20?>&variation_id=262" class="rounded-rect-button add-to-cart">Add to Cart</a>
相反,簡單的產品工作正常。我在管理員中設置了我的產品變化的價格。不知道為什麼它不像發送數據那麼簡單。任何幫助將不勝感激。
最佳解決方案
我目前在一家商業軟件商店中工作,似乎他們對這種行為進行了討論。
我的 ajax 網址添加到購物車的項目必須如下所示:
?add-to-cart=[PRODUCT-ID]&variation_id=[VARIATION-ID]&attribute_[ATTRIBUTE-NAME]=[ATTRIBUTE-SLUG]&attribute_[ATTRIBUTE-NAME]=[ATTRIBUTE-SLUG]
例:
http://example.com/store/category/product/?add-to-cart=239&variation_id=240&attribute_pa_size=48-2&attribute_pa_color=gold
這將特定產品添加到購物車中,並在購物車中設置變體屬性。您甚至可以通過添加&quantity=[VALUE]來設置數量
最終這個方法很方便,因為所有這些值都設置在提交表單/選擇字段內,你只需要查看這些。
次佳解決方案
看出這一個。我缺少一個參數,需要添加一個可變產品到我的購物車。缺少的參數是 variation_id 和 variation_id 所指的屬性類型。變量 id 可以在 admin> wo ce ce 產品和您創建的產品變體旁邊的變體標籤下。
屬性參數由前綴 attribute_形成,然後形成消毒屬性名稱。例如,我的屬性稱為庫存顏色,所以我的屬性類型參數是 attribute_stock 顏色。從我可以説,你只是設置 attribute_stock-colors=1,因為添加到購物車方法只是檢查看是否存在。
以下是一個簡單的鏈接示例,該鏈接將產品添加到我的購物車,具有變化 id 261 的股票顏色:
<a href="<?php%20echo%20esc_url(%20$product->add_to_cart_url()%20);%20?>&variation_id=261&attribute_stock-colors=1">Add to Cart</a>
為了在真實的情況下使用它,您需要從用户在下拉菜單中選擇的選項動態設置屬性類型和變體 ID(除非每個產品都具有相同的變體,這基本上使它成為一個簡單的產品) 。
參考文獻
注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。