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!


¿Me invitas a un café?
Si te ha gustado el blog o algún artículo en concreto te ha ayudado a resolver una duda o problema que tenías…¿me invitas a un café?

Puede que también te interese

Como desactivar la edición de plugins y temas desde WordPress
Si has llegado hasta aquí desde un buscador probablemente sea porque alguien ha tocado donde no debería y algo se ha roto. WordPress como sabemos…
Los 10 mandamientos del WPO en WordPress
En la primera edición de la WordCamp Madrid he tenido la oportunidad de estrenarme como ponente en casa con la charla titulada Los 10 mandamientos…
Cómo añadir un enlace para los ajustes en el listado de plugins
Si estas desarrollando un plugin o vas a desarrollarlo, puede resultarte de utilidad saber cómo añadir un enlace para los ajustes de tu plugin en el…
Seguridad WordPress: proteger el archivo wp-login.php
En una entrada anterior vimos cómo proteger el acceso a wp-admin. Vamos a ver ahora cómo proteger el archivo wp-login.php, situado en la raíz de…