Convertir entradas de WordPress a productos en WooCommerce

27 dic 2013, 14:27:50
Vistas: 24.6K
Votos: 3

¿Hay alguna manera de convertir todas las entradas que tenemos actualmente en nuestra instalación de WordPress a productos utilizando alguna consulta MySQL o algo similar?

1
Comentarios

Gracias por esto... pero, también hay que convertir el tipo de categoría en la tabla de taxonomía, de lo contrario el sitio se vuelve un poco loco. Transferir el tipo de etiqueta también es bueno, si las usaste. Una vez que hice eso también, las publicaciones categorizadas ahora = productos etiquetados y categorizados correctamente. :-) http://docs.woothemes.com/document/managing-product-taxonomies/

User User
11 sept 2014 00:38:21
Todas las respuestas a la pregunta 5
2

Puedes actualizar el post_type en la tabla mysql llamada wp_posts cambiando el post_type a product

Consulta de ejemplo: UPDATE wp_posts SET post_type = 'product' WHERE post_type = 'post';

27 dic 2013 14:44:42
Comentarios

El tipo de publicación correcto es 'product' no 'products', por lo demás excelente solución, no necesitas un plugin para algo tan simple.

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

Pero ¿qué pasa con la información meta de todos los productos, como el peso y las dimensiones? Tomar esta ruta simplemente cambia las publicaciones al tipo correcto, pero no mapeará los datos a las ubicaciones apropiadas.

EHerman EHerman
12 nov 2014 22:41:36
0

Podrías instalar el plugin Post Type Switcher

O ejecutar una consulta SQL en tu base de datos para cambiar el tipo de publicación a producto

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

Haz primero una copia de seguridad de tu base de datos.

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

Por favor utiliza $wpdb para interactuar con la Base de Datos.

global $wpdb;
$wpdb->update(
    // Nombre de la tabla
    $wpdb->posts,
    // Nuevos valores
    array( 'post_type' => 'product', ),
    // Cláusula SQL "WHERE" base / filas afectadas
    array( 'post_type' => 'post', ),
    // Tipo de dato (disponibles: %s cadena, %d entero, %f flotante)
    '%s',
    // Tipo de cláusula SQL "WHERE"
    '%s'
);

Ten en cuenta que esta consulta cambiará el post_type de todos los post a product. Se recomienda tener una copia de seguridad de tu BD antes de hacer esto. Sería incluso mejor si usas una instalación de prueba (local) y refinas tu proceso de actualización allí.

Más información sobre cómo actualizar filas en la BD.

Una Guía detallada sobre cómo manejar MySQL en la Línea de Comandos puede encontrarse en este extenso meta post.

11 sept 2014 01:14:11
Comentarios

Si estás haciendo esto usando WordPress, este es un buen consejo. Sin embargo, recomendaría que este tipo de trabajo se realice utilizando MySQL Workbench o la línea de comandos. Y refinar el proceso localmente es imprescindible.

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

@PeterWooster Tenemos una meta publicación para eso - mira la actualización y el enlace al final de la respuesta. Aparte de eso, esta respuesta solo muestra una alternativa a las otras respuestas que explican los comandos SQL puros (y quizás ignorando el hecho de que algunos elementos son objetivos móviles como el prefijo de la tabla de la base de datos). También hay una nota que dice que esto debería probarse localmente.

kaiser kaiser
17 nov 2014 21:51:27
0

Adicionalmente (opcional): Consulta SQL para convertir las categorías a product_cat

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

Utilicé https://wpsheeteditor.com/. Las otras soluciones eran geniales si querías hacer todas las páginas, yo habría hecho la consulta SQL, pero había alrededor de 30 páginas que necesitaban cambios y 40 que no. Incluso si solo unas pocas necesitaban ser revertidas, lo habría hecho, pero este plugin de editor de hojas fue de gran ayuda.

30 jun 2020 21:12:06