• Saltar a la navegación principal
  • Saltar al contenido principal
  • Saltar a la barra lateral principal

Must Comunicación

Diseño Web y Marketing Online

  • Temas WordPress
  • Plugins WordPress
  • WooCommerce
  • Marketing
  • Tutoriales
    • WooCommerce
    • Easy Digital Downloads
  • Contacto
Usted está aquí: Inicio / WordPress / Desarrollo Web / Cómo hacer que tu tema sea compatible con WooCommerce

Cómo hacer que tu tema sea compatible con WooCommerce

Desarrollo Web WooCommerce WordPress Tagged as: Tutoriales Tuts+, WooCommerce Deja un comentario

Compartir
Compartir
Twittear
Pocket
WhatsApp
Email

En este tutorial para principiantes te mostraré la forma correcta de añadir compatibilidad con WooCommerce a tu tema WordPress. También aprenderá a extenderlo de una forma no intrusiva, sin editar los archivos del núcleo del plugin. Veremos los siguientes pasos lógicos:

  1. Primeros Pasos
  2. El Empleo de Hooks y Acciones
  3. Extensiones WooCommerce

1. Declarar la compatibilidad con WooCommerce

Imaginemos que estamos desarrollando un tema WordPress. Queremos mejorar alguna de las estupendas funcionalidades de WooCommerce, y personalizar también otras de sus funcionalidades. Existen dos formas en las que podríamos extender la funcionalidad de WooCommerce sin editar los archivos del núcleo del plugin:

  1. Usando los hooks (para desarrolladores intermedios)
  2. Usando la función woocommerce_content() dentro de nuestro tema

He encontrado que una combinación de estas opciones es lo que mejor funciona para producir resultados fiables. Así que primero declaramos la compatibilidad con WooCommerce en el archivo «functions.php» de nuestro tema y deshabilitamos los estilos predeterminados de WooCommerce con los del diseño de nuestro propio tema.

Añadir compatibilidad con WooCommerce a nuestro tema WordPress
PHP
1
2
3
4
add_action( 'after_setup_theme', 'woocommerce_support' );
function woocommerce_support() {
add_theme_support( 'woocommerce' );
}

Esto ocultará el mensaje «Tu tema no declara la compatibilidad con WooCommerce».

Para deshabilitar los estilos predeterminados de WooCommerce, añadimos lo siguiente:

Código para deshabilitar los estilos predeterminados de WooCommerce
PHP
1
2
3
if (class_exists('Woocommerce')){
    add_filter( 'woocommerce_enqueue_styles', '__return_empty_array' );
}

Con la función class_exists(), comprobamos si el plugin WooCommerce está instalado y activo. Una vez esté activo, deshabilitamos sus estilos predeterminado. Más adelante, en este tutorial añadiremos algunas configuraciones de acciones y hooks dentro de esta declaración if.

2. Crea una nueva plantilla de página

Por ahora, duplica el archivo «page.php» del tema, y llámalo «woocommerce.php». Este archivo debería estar ubicado en la siguiente ruta: wp-content/themes/TUTEMA/woocommerce.php.

Abre tu archivo recién creado en un editor de texto o en el editor de código de tu elección. Después tendrás que encontrar el loop, que normalmente empieza con:

Crear nuestro propio archivo woocommerce.php para la página de la tienda
PHP
1
<?php if ( have_posts() ) :

y normalmente termina con:

Código para cerrar el loop de WooCommerce
1
<?php endif; ?>

Esto puede variar entre un tema y otro. Una vez hayas encontrado el loop, elimínalo. En su lugar coloca los siguiente:

Código del loop de la página de la tienda de WooCommerce
PHP
1
<?php woocommerce_content(); ?>

Crear nuestro propio loop para la página de la tienda de WooCommerce

Nuestra plantilla woocommerce.php ahora usa el loop de WooCommerce. woocommerce_content() carga la lista de productos en la página principal de la tienda, en las páginas de categoría de productos, el la página de búsqueda de productos y en el contenido del producto cuando estamos viendo la página del producto.

3. Añadir cosas a woocommerce.php

Como woocommerce.php es ahora parte de tu tema, puedes personalizarlo al igual que haces con tus otros archivos. Por ejemplo, yo siempre añado la sección del título de la página, ya que mis páginas regulares normalmente contienen esas cosas. Ninguna de estas cosas afecta a woocommerce_content(). En este punto, puedes añadir también otras cosas usando etiquetas condicionales de WooCommerce y WordPress.

Por ejemplo, añadamos la función para la paginación a la página de producto, de la siguiente manera:

PHP
1
2
3
4
5
<?php if (is_product()): ?>
 
// your navigation function goes here.
 
<?php endif ?>

4. Usar los hooks y las acciones en WooCommerce

Puedes encontrar la lista completa de acciones, hooks y filtros en la documentación de WooCommerce.

Si nunca has trabajado con las acciones, lo hooks ni los filtros de WooCommerce, te recomiendo que eches un vistazo a los siguientes recursos:

  • Guía de inicio a las acciones y los filtros en WordPress

    Tom McFarlin
  • Acciones y filtros de WordPress: ¿Cuál es la diferencia?

    Rachel McCollin

Para entender mejor dónde están los hooks, te recomiendo leer la serie de Business Bloomers Visual Hook.

Para una comprensión un poco más compleja, pero aún más profunda de cómo funciona la lógica de WooCommerce, te recomiendo examinar los archivos de base del plugin (woocommerce > templates).

Por ejemplo, veamos qué podemos hacer en la página de la tienda. Para modificar el diseño de página mediante hooks, tienes dos opciones:

  • Extender la acción sin eliminarla.
  • Eliminar/quitar el hook de la acción existente y sustituirlo por uno propio personalizado.

El método más conveniente depende de lo que quieras conseguir. Por ejemplo, imagina que quieres eliminar la opción para ordenar los productos en la página de tu tienda:

Eliminar la opción de ordenar los productos en la tienda de WooCommerce
PHP
1
remove_action( 'woocommerce_before_shop_loop', 'woocommerce_catalog_ordering', 30 );

Esto es todo lo que necesitas añadir en tu archivo functions.php, dentro de la declaración if class exists. WooCommerce entenderá ahora que no necesitas esa funcionalidad.

Lo que te queda por leer:

  • Modificar la prioridad de ejecución

  • 5. Extensiones para WooCommerce

  • Conclusión

seguir leyendo en Tuts+

Entradas relacionadas

Compartir
Compartir
Twittear
Pocket
WhatsApp
Email

categorías: Desarrollo Web, WooCommerce, WordPress etiquetas: Tutoriales Tuts+, WooCommerce

anterior
siguiente

Acerca de Eva Collados Pascual

Apasionada de la sociedad de la información, el marketing online, la tecnología, el diseño y el arte.
Sigo a diario todas las noticias relacionadas con WordPress, si no encuentras en el blog la solución que buscabas, no dudes en consultarme.

Interacciones con los lectores

Deja una respuesta Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Acepto la Política de privacidad

Barra lateral principal

Categorías

  • Apps – Productividad
  • Artículos Tuts+
  • Diseño Web
  • eCommerce
  • Email Marketing
  • Emprendimiento
  • Marketing
  • SEO
  • Temas Shopify
  • Temas WordPress
  • Tutoriales
    • Tutorial de Easy Digital Downloads
    • Tutorial de WooCommerce
    • Tutorial W3 Total Cache
  • WooCommerce
  • WordPress
    • Desarrollo Web
    • Optimización
    • Plugins
    • Seguridad
    • Temas WordPress

Etiquetas

caché Conversión CRO Inspiración Web Landing Pages newsletters Performance Optimization PHP Plugins WooCommerce Plugins WordPress Seguridad SEO Startups Temas WooCommerce Temas WordPress Tutoriales Tuts+ Vídeo WooCommerce WordPress WPO

Copyright Must Comunicación© 2025 Genesis Framework

Este sitio web usa cookies propias y de terceros para recordar tus datos de inicio de sesión y recopilar estadísticas para mejorar la experiencia del usuario. Más información sobre las cookies Leer más. Aceptar x
Privacy & Cookies Policy

Privacy Overview

This website uses cookies to improve your experience while you navigate through the website. Out of these cookies, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may have an effect on your browsing experience.
Necessary
Siempre activado
Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information.
Non-necessary
Any cookies that may not be particularly necessary for the website to function and is used specifically to collect user personal data via analytics, ads, other embedded contents are termed as non-necessary cookies. It is mandatory to procure user consent prior to running these cookies on your website.
GUARDAR Y ACEPTAR