¿Cómo sobrescribir archivos de plantilla de WooCommerce?

11 feb 2017, 15:48:22
Vistas: 63.8K
Votos: 11

Estaba tratando de personalizar la página de la tienda (agregando un área de widgets a la página). ¿Hay alguna manera o plugin que me ayude a hacerlo? Creé un page-shop.php sin embargo no se vieron cambios.

5
Comentarios

¿Solo quieres agregar widgets a la página de la tienda?

user6552940 user6552940
11 feb 2017 15:49:54

Sí, por ahora. Necesito que muestren un área de búsqueda y un área de categorías de productos.

Roshan Chapagain Roshan Chapagain
11 feb 2017 15:56:19

Muchas gracias. Pero, hay un archivo 'woocommerce.php' en mi tema y el enlace dice que no podré sobrescribir el 'archive-product.php' si está ahí. ¿Hay alguna manera de solucionar esto?

Roshan Chapagain Roshan Chapagain
11 feb 2017 16:08:03

He actualizado mi respuesta con los pasos necesarios.

user6552940 user6552940
11 feb 2017 16:19:32

O simplemente puedes usar este plugin para eso :D https://wordpress.org/plugins/woo-edit-templates/

ioannup ioannup
12 may 2018 23:05:53
Todas las respuestas a la pregunta 3
1
17

Los archivos de plantilla de WooCommerce son diferentes a los archivos de plantilla de WordPress. Mira esto para ver cómo funciona y el archivo de plantilla para las páginas de tienda es archive-product.php

Normalmente, todos los temas proporcionan un área de barra lateral separada para la página de tienda, ¿has comprobado si tu tema es compatible con WooCommerce?
Si es así, deberías tener una barra lateral disponible en Apariencia->Widgets con un nombre similar a 'Barra lateral de la tienda'

¿Cómo sobrescribir una plantilla?

Para sobrescribir la página de tienda,
copia: wp-content/plugins/woocommerce/templates/archive-product.php
a wp-content/themes/tu_nombre_de_tema/woocommerce/archive-product.php

y luego haz los cambios necesarios en la plantilla en la carpeta de tu tema.

Lo que sucede es que WooCommerce busca primero el archivo archive-product.php en el directorio del tema y si encuentra un archivo en el directorio woocommerce/, entonces usará ese archivo en lugar del predeterminado.
Así que ahora tienes que editar el archivo dentro de tu_carpeta_de_tema/woocommerce para hacer cualquier cambio.

11 feb 2017 16:02:53
Comentarios

Puedes sobrescribir la plantilla copiándola en tu carpeta de plantillas como se especifica en el enlace y luego haciendo los cambios necesarios. Actualizaré la respuesta con las instrucciones.

user6552940 user6552940
11 feb 2017 16:11:40
1
11

Si estás utilizando anulaciones de plantillas personalizadas de WooCommerce en tu tema, necesitas declarar el soporte para WooCommerce usando la función add_theme_support. Las anulaciones de plantillas de WooCommerce solo se activan en temas que declaran soporte para WooCommerce. Si no declaras el soporte para WooCommerce en tu tema, WooCommerce asumirá que el tema no está diseñado para compatibilidad con WooCommerce y utilizará un renderizado de tema no compatible basado en shortcodes para mostrar la tienda.

Declarar el soporte para WooCommerce es sencillo y consiste en añadir una función en el archivo functions.php de tu tema.

function mytheme_add_woocommerce_support() {
    add_theme_support( 'woocommerce' );
}
add_action( 'after_setup_theme', 'mytheme_add_woocommerce_support' );

Ahora para anular el archivo de plantilla copia: wp-content/plugins/woocommerce/templates/archive-product.php a wp-content/themes/nombre_de_tu_tema/woocommerce/archive-product.php

1 ago 2018 19:06:08
Comentarios

¡Eres un salvador, gracias!

Sharpey Sharpey
23 oct 2021 19:41:10
0

Ten en cuenta que si intentas sobrescribir la página de tienda de WooCommerce de la manera sugerida anteriormente:

Para sobrescribir la página de tienda, copia: wp-content/plugins/woocommerce/templates/archive-product.php a wp-content/themes/tu_nombre_de_tema/woocommerce/archive-product.php

Tendrás también impacto en las páginas de categorías de la tienda.

Si deseas tener un impacto solo en la página de tienda por separado, será mejor crear una nueva plantilla en:

wp-content/themes/tu_nombre_de_tema/archive-product.php
6 ene 2021 15:08:17