2014-07-03 72 views
5

我在WooCommerce 2.1.12版本中有大約10,000多種產品,WordPress版本3.9.1,並且通過導入錯誤,銷售價格字段每填充一個「0」產品,從而使每個產品現在免費。嘗試查找和批量編輯MySQL中的WooCommerce價格

所以,我需要做的,當然是一個查詢,刪除所有的人,但我似乎無法找到這些表的價格英寸

我做了一個廣泛的搜索,我認爲,試圖在谷歌和這裏找到這個。我來最接近的就是這個問題:

Need to get productdata out of mysql database

這看起來好像是在元領域,但我不能直觀地看到他們那裏。 任何人都知道哪裏可以找到價格的細節,並且可能對查詢結構有點幫助?

感謝您的時間,

NE

回答

4

這是你如何將打印價格:

SELECT p.id, p.post_title, m.meta_key, m.meta_value 
FROM wp_posts p 
INNER JOIN wp_postmeta m ON p.id=m.post_id 
    AND m.meta_key='_price' 

你怎麼想的價格呢?更新它們?

要將價格設置爲特定值,它非常簡單。將價格設置爲任何你想要的。

UPDATE wp_postmeta m 
    JOIN wp_posts p ON m.post_id=p.id 
    AND m.meta_key = '_price' 
    AND p.post_type = 'product' 
SET m.meta_value = <price> 
+0

稍作修改,帖子類型是沒有任何前綴的'product'。 – brasofilo

+0

是的,沒錯。把它與課堂名稱混在一起我認爲:) – Pelmered

+0

1.僅編輯'_price'是不夠的。還有'_regular_price'和'_sale_price'。銷售價格是可選的。常規總是存在。 2.在大多數情況下,檢查'post_type'是不必要的。 – tivnet

0

我需要做這樣的事情。我不得不更新110種產品的價格。所有產品的尺寸均有變化,所有尺寸的價格均相同。這是我用來獲取所有需要在後端進行更改的字段的查詢。我在網上搜索,我搜索了名字中有價格的所有元鍵。在更新SQL後,前端的價格沒有變化。我發現如果我對一個產品進行批量編輯(正常價格,因爲這對於變化價格不起作用),那麼所有價格都反映了數據庫中的變化。奇怪。也許是緩存的東西。

SELECT p.id, IF(p.post_parent =0, p.id, p.post_parent) AS parent, p.post_type, p.post_title, m.meta_key, m.meta_value 
FROM wp_posts p 
INNER JOIN wp_postmeta m ON p.id = m.post_id 
WHERE 
    (m.meta_key IN ('_price','_regular_price') AND p.post_type = 'product_variation') OR 
    (m.meta_key IN ('_max_variation_price','_min_variation_price','_max_variation_regular_price','_min_variation_regular_price') AND p.post_type = 'product') 
ORDER BY parent 
1

幾天前我們發佈了PW WooCommerce Bulk Edit到WordPress.org的回購協議。這將有助於你的情況,而不需要進入數據庫。

該插件是免費的,並有助於清理您的價格。全面披露:有一個付費版本,有更多的領域/功能。

https://wordpress.org/plugins/pw-bulk-edit