我正在構建Wordpress/WooCommerce網站,我想將自定義帖子類型附加到WooCommerce變體。例如。自定義帖子類型是「紙張厚度」,我希望能夠從產品的WooCommerce版本的下拉列表中選擇紙張厚度。作爲WooCommerce變體添加自定義帖子類型的帖子
這將位於產品編輯頁面,因此在前端,它將根據所選的自定義帖子顯示與變體相關的詳細信息。
有沒有辦法做到這一點有或沒有插件?
任何幫助將不勝感激!
我正在構建Wordpress/WooCommerce網站,我想將自定義帖子類型附加到WooCommerce變體。例如。自定義帖子類型是「紙張厚度」,我希望能夠從產品的WooCommerce版本的下拉列表中選擇紙張厚度。作爲WooCommerce變體添加自定義帖子類型的帖子
這將位於產品編輯頁面,因此在前端,它將根據所選的自定義帖子顯示與變體相關的詳細信息。
有沒有辦法做到這一點有或沒有插件?
任何幫助將不勝感激!
更新時間:
這裏是一個自定義下拉選擇添加到現有的變化的解決方案。
您可以如您所願,選擇您的自定義職位類型「紙張厚度」任何產品的變化選項...這是你會得到什麼:
下面是相關的代碼即:
// Add custom dropdown selector to existing variation settings
add_action('woocommerce_variation_options_pricing','add_cp_option_to_variations',20 ,3);
function add_cp_option_to_variations($loop, $variation_data, $variation){
// HERE define your options array (or add some code to get the array dynamically)
$options = array(
'' => __('Choose a value…', 'woocommerce'), // default
'option1' => __('Option 1', 'woocommerce'),
'option2' => __('Option 2', 'woocommerce'),
'option3' => __('Option 3', 'woocommerce')
);
woocommerce_wp_select(array(
'id' => "select_paper_thickness_$loop",
'label' => __('Paper Thickness options: <br>', 'woocommerce'),
'value' => get_post_meta($variation->ID, '_paper_thickness_option', true),
'options' => $options,
));
}
//Save Variation checkbox custom field
add_action('woocommerce_save_product_variation','save_cp_option_to_variations', 10 ,2);
function save_cp_option_to_variations($variation_id, $loop){
$selected_option = $_POST["select_paper_thickness_$loop"];
if(! empty($selected_option))
update_post_meta($variation_id, '_paper_thickness_option', esc_attr($selected_option));
}
代碼放在您的活動子主題(或主題)的function.php文件或也以任何插件文件。
該代碼測試和工程
感謝@LoicTheAztec的迴應,但它不完全是我的dillema - 我想添加一個下拉(選擇)字段,將自定義帖子類型的項目顯示爲變體集,而不僅僅啓用自定義選項複選框。 – PavKR
@PavKR我已經更新了我的答案...你現在得到一個下拉選擇器。但是您需要自定義代碼才能動態獲取正確的選項。 – LoicTheAztec
我很好奇,爲什麼?因爲,在最後,這取決於你將如何編寫它,它不會是有用的。我說,你的問題不清楚。我能想到做這件事的方式有很多,但哪個取決於你爲什麼要這樣做。 – Reigel
@Reigel,道歉,讓我試試澄清;我希望客戶能夠爲變體設置一定數量的選擇,所以我認爲我可以將其設置爲自定義帖子類型。如果有一種方法可以爲變體定義設置選項,那麼這也足夠了。 – PavKR