Blog sobre desarrollo WordPress en Español Desarrollo WordPress en Español
WooCommerce

Cómo hacer tu tema de WordPress compatible con WooCommerce

WooCommerce se ha convertido en una de las principales plataformas de eCommerce del mercado. Tanto es así que portales como BuiltWith arrojan cifras como estas:

WooCommerce estadisticas

WooCommerce fue adquirido por Automattic en 2015. Durante los últimos años ha experimentado un crecimiento exponencial. A día de hoy representa casi la mitad del pastel (42%).

Si alguna vez has instalado un WooCommerce y has buscado temas para tu tienda online en un Marketplace, habrás notado que en muchos temas se indica si es o no WooCommerce Compatible.

¿Qué significa eso? Pues que no todos los temas soportan WooCommerce. En este post vamos a ver cómo hacer que un tema propio desarrollado a medida sea compatible con WooCommerce.

Lo primero que verás si tienes un tema no compatible con WooCommerce e instalas el plugin será un aviso como este:

WooCommerce compatible

Si queremos desarrollar un tema compatible con WooCommerce o hacer el nuestro compatible, lo primero es indicar que lo soporta en nuestra función de configuración del tema. Hace unos meses escribí una serie de posts sobre cómo crear tus propios temas desde cero

Si tenemos claro esto, empezamos. Añadiremos a nuestro functions.php las siguientes líneas:

Sólo con esto ya conseguiremos que nuestro tema sea compatible. Desaparecerá el aviso que he mencionado anteriormente. Al instalar WooCommerce nos habrá creado 4 páginas nuevas:

  • Carrito
  • Finalizar compra
  • Mi cuenta
  • Tienda

 

En estas páginas encontraremos shortcodes que pintan el contenido de estas secciones:

  • Carrito => [woocommerce_cart]
  • Finalizar compra => [woocommerce_checkout]
  • Mi cuenta => [woocommerce_my_account]
  • Tienda => Se almacena el ID de la página en la opción woocommerce_shop_page_id

 

La página principal de la tienda no lleva shortcode. Se almacena su ID en base de datos y a la hora de mostrar ésta página, se mostrará la portada de nuestra tienda.

 

Adaptando WooCommerce al diseño de nuestro tema

En nuestro functions.php podemos definir un contenedor para la tienda. Por ejemplo si en nuestro tema utilizamos bootstrap, podemos definir al principio los divs de container, row y col-sm-12, y al finalizar sus cierres de etiqueta correspondientes:

Como se puede observar, primero se eliminan los actions woocommerce_before_main_content y woocommerce_after_main_content, y a continuación se crean los nuestros propios con el HTML que queramos.

Por lo demás, solo quedaría maquetar la parte de tienda según nuestro diseño o look&feel. WooCommerce a través de sus plantillas y shortcodes pintan HTML con clases propias.

Por defecto WooCommerce dispone de hojas de estilo propias dentro de la carpeta assets/css/ del plugin. Estos CSS están escritos con mimo, usando % en las medidas para intentar ser compatibles con la mayoría de temas, pero lo más probable es que queramos darle un toque para adaptarlo a nuestro diseño.

Para esto lo que podemos hacer es eliminar de la cola de carga de estilos los CSS de WooCommerce, y copiar estos archivos CSS en nuestro tema para editarlos según nuestras necesidades. Incluiremos en nuestro functions.php:

Ahora editaremos a nuestro antojo los CSS que hemos copiado en nuestro tema, para adaptarlos al diseño de nuestra página. Una vez finalizados, los agregaremos a nuestro tema utilizando la función wp_enqueue_style().

¡Ahora nuestro tema es compatible con WooCommerce!

Puede que también te interese

Sidebar diferente para cada página en WordPress
Sidebar diferente para cada página en WordPress
En algunas ocasiones podemos necesitar tener un sidebar o barra lateral diferente para cada página o sección de nuestro sitio. Esto lo podemos hacer de…
Cómo eliminar automáticamente los enlaces por defecto en las imágenes dentro del editor de WordPress
Cómo eliminar automáticamente los enlaces por defecto en las imágenes dentro del editor de WordPress
WordPress dispone de un sistema potentísimo para administrar el contenido multimedia de tu sitio web. Es muy fácil subir archivos, imágenes, etc…y siempre las tendremos…
Seguridad WordPress: proteger el acceso a wp-admin
Seguridad WordPress: proteger el acceso a wp-admin
Uno de los objetivos más importantes para cualquier atacante es el acceso al panel de administración o back-end de nuestro WordPress. Debemos aumentar la seguridad…
Autocomplete Off en el formulario de login al backend de WordPress
Autocomplete Off en el formulario de login al backend de WordPress
En ésta entrada vamos a ver cómo agregar la funcionalidad autocomplete=”off” para los campos de usuario y clave en el formulario de login al backend…