Wie verschieben Sie benutzerdefinierte Felder mithilfe von WP-Abfragen in benutzerdefinierte Taxonomien?

Um Komplikationen zu vermeiden, habe ich eine benutzerdefinierte Felder (Kategorien und Begriffe) in die Tabelle wp_postmeta importiert, die mit den entsprechenden Posts verknüpft sind. Wie in wp_postmeta aufgelistet:

meta_id post_id meta_key meta_value 183 45 job_listing_region Kingston 208 46 job_listing_region Fajardo 233 47 job_listing_region Letchworth 258 48 job_listing_region Oxford 283 49 job_listing_region Beaulieu-sur-Mer 

Verwenden Sie eine SQL-Abfrage, wie verschieben Sie diese zu Taxonomien und Termen in die folgenden Tabellen?

 wp_term_relationships wp_term_taxonomys wp_terms 

Ich finde die Tabellenbeziehung etwas verwirrend, ob in diesem Fall JOIN oder UPDATE. Ein guter Referenzartikel für jemanden, der weiß, was er tut. Vielen Dank im Voraus, Murray

SQL zum Aktualisieren von benutzerdefinierten Posttaxonomien

Solutions Collecting From Web of "Wie verschieben Sie benutzerdefinierte Felder mithilfe von WP-Abfragen in benutzerdefinierte Taxonomien?"

Ich würde empfehlen, WordPress-functionsaufrufe zu verwenden, um Ihre Begriffe anstelle von SQL einzurichten. Dies setzt voraus, dass Sie bereits eine benutzerdefinierte Taxonomie namens job_listing_region registriert haben.

 // Add this to your theme's functions.php function convert_meta_to_term() { global $wpdb; $meta_query = $wpdb->get_results(" SELECT * FROM $wpdb->postmeta WHERE meta_key = 'job_listing_region' "); foreach ($meta_query as $meta) { // Append new terms for each post wp_set_object_terms($meta->post_id, $meta->meta_value, 'job_listing_region', true); } } add_action('wp_ajax_convert_meta_to_term', 'convert_meta_to_term'); 

Jetzt können Sie diese function aufrufen, indem Sie auf die URL http://your-blog.tld/wp-admin/admin-ajax.php?action=convert_meta_to_term .