Convertire i post di WordPress in prodotti WooCommerce

27 dic 2013, 14:27:50
Visualizzazioni: 24.6K
Voti: 3

C'è un modo per convertire tutti i post che abbiamo attualmente nella nostra installazione WordPress in prodotti utilizzando una query MySQL o qualcosa di simile?

1
Commenti

Grazie per questo... ma bisogna anche convertire il tipo di categoria nella tabella delle tassonomie, altrimenti il sito diventa un po' instabile! Trasferire anche il tipo di tag è utile, se li hai utilizzati. Una volta fatto anche questo, i post categorizzati ora = prodotti correttamente etichettati e categorizzati. :-) http://docs.woothemes.com/document/managing-product-taxonomies/

User User
11 set 2014 00:38:21
Tutte le risposte alla domanda 5
2

Puoi aggiornare il post_type nella tabella mysql wp_posts modificando il post_type in product

esempio di query UPDATE wp_posts SET post_type = 'product' WHERE post_type = 'post';

27 dic 2013 14:44:42
Commenti

Il tipo di post corretto è 'product' non 'products', per il resto soluzione eccellente, non hai bisogno di un plugin per qualcosa di così semplice.

Do Not Track Me Do Not Track Me
7 mag 2014 05:09:29

Ma cosa succede con il popolamento di tutte le informazioni meta dei prodotti, come peso e dimensioni? Seguendo questa strada si cambia semplicemente il tipo di post a quello corretto, ma non si mappano i dati nelle posizioni appropriate.

EHerman EHerman
12 nov 2014 22:41:36
0

Puoi installare il plugin Post Type Switcher

Oppure eseguire una query SQL sul tuo database per cambiare il post nel tipo di post prodotto

UPDATE  `wp_posts` SET  `post_type` =  'product' WHERE  `post_type` = 'post';

Effettua prima un backup del tuo database.

UPDATE  `wp_posts` SET  `post_type` =  'wpsc-product' WHERE  `post_type` = 'post';
27 dic 2013 15:12:11
2

Per favore utilizza $wpdb per interagire con il Database.

global $wpdb;
$wpdb->update(
    // Nome della tabella
    $wpdb->posts,
    // Nuovi valori
    array( 'post_type' => 'product', ),
    // Clausola SQL "WHERE" di base / righe interessate
    array( 'post_type' => 'post', ),
    // Tipo di dati (disponibili: %s stringa, %d intero, %f decimale)
    '%s',
    // Tipo della clausola SQL "WHERE"
    '%s'
);

Tieni presente che questa query cambierà il post_type di tutti i post in product. È consigliabile avere un backup del tuo DB prima di eseguire questa operazione. Sarebbe ancora meglio se utilizzassi un'installazione di test (locale) e perfezionassi il tuo processo di aggiornamento lì.

Maggiori informazioni sull'aggiornamento delle righe nel DB.

Una Guida dettagliata su come gestire MySQL dalla riga di comando è disponibile in questo post meta approfondito.

11 set 2014 01:14:11
Commenti

Se stai facendo questo usando WordPress, questo è un buon consiglio. Tuttavia, consiglierei che questo tipo di lavoro venga eseguito utilizzando MySQL Workbench o la riga di comando. E perfezionare il processo localmente è un must.

Peter Wooster Peter Wooster
17 nov 2014 21:09:33

@PeterWooster Abbiamo un meta post per quello - vedi l'aggiornamento e il link in fondo alla risposta. A parte questo, questa risposta mostra solo un'alternativa alle altre risposte che spiegano i comandi SQL puri (e forse ignorano il fatto che alcuni elementi sono bersagli mobili come il prefisso della tabella del database). Inoltre c'è una nota che questo dovrebbe essere testato localmente.

kaiser kaiser
17 nov 2014 21:51:27
0

Inoltre (opzionale): Query SQL per convertire le categorie in product_cat

UPDATE `wp_term_taxonomy` SET `taxonomy`='product_cat' WHERE `taxonomy`='category'
5 set 2018 16:55:46
0

Ho utilizzato https://wpsheeteditor.com/. Le altre soluzioni erano ottime se avessi voluto modificare tutte le pagine, avrei potuto usare la query SQL, ma c'erano circa 30 pagine da modificare e 40 che non ne avevano bisogno. Anche se solo alcune dovevano essere modificate, questo plugin di modifica tramite foglio di calcolo è stato di enorme aiuto.

30 giu 2020 21:12:06