2014-12-26 33 views
0

我需要將主要WooCommerce元文件夾中的默認產品類型從「簡單產品」更改爲「簡單訂閱」,沒有人有關於如何實現此目的的想法?如何更改主元文件夾中的默認產品類型

試圖使用我在源代碼中找到的過濾器,但是最接近的是我添加了一個自定義產品類型,這顯然不是什麼後。

謝謝。

+0

如果您只想更改名稱,那麼您可以從插件自行完成。它位於第39行的'wp-content>插件> woocommerce> includes> admin> meta-boxes> class-wc-meta-box-product-data.php'中。 **注意:**這是不是很好的做法。但如果你很着急,你可以選擇這種方式。 –

回答

2

你忽略了正確的過濾器,default_product_type,這是在output方法WC_Meta_Box_Product_Data類:

if ($terms = wp_get_object_terms($post->ID, 'product_type')) { 
    $product_type = sanitize_title(current($terms)->name); 
} else { 
    $product_type = apply_filters('default_product_type', 'simple'); 
} 

對其進行過濾,你會做類似如下:

function so_27657057_default_product_type(){ 
    return "subscription"; 
} 
add_action('default_product_type', 'so_27657057_default_product_type'); 

你可能需要通過一些條件邏輯來檢查是否存在特定於訂閱的類,但是如果您知道它始終存在,那不是那麼重要。

1

謝謝大家的寶貴意見。 WooThemes支持還添加了我結束了使用的解決方案,它的工作很好:

add_filter('product_type_selector', 'mw_custom_product_type_change', 20); 
function mw_custom_product_type_change($product_types) { 
    $new_array = array('booking' => $product_types['booking']); 
    $product_types = $new_array; 
    return $product_types; 
} 

@helgatheviking做法似乎真的太優雅了,所以我會嘗試也。再次感謝。

相關問題