2017-08-09 2 views
0

Ich versuche, meine WordPress-Site vom Simple Fields-Plugin zum Advanced Custom Fields-Plugin zu migrieren.Migration von einfachen Feldern zu erweiterten benutzerdefinierten Feldern

Ich habe jetzt alle ACF-Komponenten erstellt, die ich nur mit den Daten aus der SF-Datenbank füllen muss.

Die Tabelle, die die Daten speichert wp_postmeta ist und die Spalten sind meta_id, post_id, meta_key und meta_value.

meta_id ist die eindeutige ID für jede Zeile, so dass diese Spalte mir nicht wirklich hilft, so post_id ist die Spalte, die zählt.

Ich muss Daten von meta_value bewegen, wo meta_key gleich _simple_fields_fieldGroupID_3_fieldID_7_numInSet_0 zu meta_value wo meta_keyhero_description gleich, hero_description leer ist, und die post_id ist identisch.

Ich werde diesen Vorgang für alle SF meta_key, die eine entsprechende ACFmeta_key haben, wiederholen müssen.

Ich weiß sehr, sehr wenig mySQL, also weiß ich nicht, wo ich anfangen soll.

Könnte mir jemand mit der Logik helfen?

Antwort

0

Ein Freund gab mir diese Abfrage, die wie ein Charme funktioniert. Hier ist es für alle anderen muss er von Simple Felder bis Erweiterte Benutzerdefinierte Felder

SET @key_from = " _simple_fields_fieldGroupID_3_fieldID_0_numInSet_0"; 
SET @key_to = "hero_title"; 

UPDATE wp_postmeta a, 
(
    SELECT 
    meta_id,post_id,meta_key,meta_value 
    FROM wp_postmeta 
    WHERE meta_key = @key_from 
    AND meta_value <> '' 
) 
b SET a.meta_value = b.meta_value 
WHERE a.meta_key = @key_to 
and a.meta_value = '' 
and a.post_id = b.post_id 

Im Grunde alles, was Sie tun müssen, migrieren, ist herauszufinden, was SF meta_key entspricht dem, was ACF meta_key und setzen @key_from und @key_to entsprechend.

Verwandte Themen