2014-07-03 11 views
5

zu finden und zu bearbeiten Ich habe etwa 10.000 Produkte in WooCommerce Version 2.1.12, WordPress Version 3.9.1 und durch einen Importfehler wurde das Verkaufspreisfeld mit einer "0" in jedem gefüllt Produkt, wodurch jedes Produkt jetzt frei wird.Versuchen, WooCommerce Preise in MySQL

Also, was ich tun muss, ist natürlich eine Abfrage alle von ihnen zu entfernen, aber ich kann einfach nicht die Tabellen scheinen zu finden die Preise in sind.

ich eine umfangreiche Suche tat, ich denke,, versuchen, dies sowohl in Google und hier zu finden. Der nächstgelegene ich kam, war diese Frage:

Need to get productdata out of mysql database

, die so aussieht, als ob es in den Meta-Felder, aber ich kann sie dort nicht visuell sehen. Wer kennt die Besonderheiten, wo die Preise zu finden sind, und vielleicht ein bisschen Hilfe bei der Abfragestruktur?

Vielen Dank für Ihre Zeit,

NE

Antwort

4

Dies ist, wie Sie die Preise drucken würde:

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' 

Was wollen Sie mit den Preisen zu tun? Aktualisieren Sie sie?

Um die Preise auf einen bestimmten Wert einzustellen, ist es ziemlich einfach. Stellen Sie den Preis auf das ein, was Sie wollen.

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

Minor-Korrektur, der Post-Typ '-Produkt mit ohne Präfix. – brasofilo

+0

Ja, das stimmt. Mixed es mit dem Klassennamen, denke ich :) – Pelmered

+0

1. Editing nur '_Price' ist nicht genug. Es gibt auch '_regular_price' und' _sale_price'. Verkaufspreis ist optional. Regelmäßig existiert immer. 2. In den meisten Fällen ist die Suche nach dem Post-Typ unnötig. – tivnet

0

Ich musste so etwas tun. Ich musste die Preise für 110 Produkte aktualisieren. Alle Produkte hatten eine Größenvariation, wobei der Preis für alle Größen gleich war. Dies ist die Abfrage, die ich verwendet habe, um alle Felder zu erhalten, die ich am Backend ändern musste. Ich suchte online und ich suchte nach allen Metaschlüsseln, die Preis im Namen hatten. Der Preis im Frontend änderte sich nach dem Update-SQL nicht. Was ich herausfand, war, dass wenn ich eine Bulk-Bearbeitung (mit regulärem Preis, da dies nicht für Variationspreise funktioniert) für ein Produkt durchgeführt wurden, alle Preise die Änderung in der Datenbank widerspiegelten. Seltsam. Vielleicht ein Caching-Ding.

1

Wir haben vor ein paar Tagen PW WooCommerce Bulk Edit zum WordPress.org Repo veröffentlicht. Dies würde in Ihrer Situation helfen, ohne in die Datenbank zu gelangen.

Das Plugin ist kostenlos und würde helfen, Ihre Preise aufzuräumen. Vollständige Offenlegung: Es gibt eine kostenpflichtige Version mit mehr Feldern/Funktionen.

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