domingo, 29 de marzo de 2015

Plugins y Themes de Wordpress


Una de las características que hacen de Wordpress uno de los mejores y mas versátiles CMS, son sus themes (plantillas) y plugins. Tanto unos como otros se instalan en pocos clics y los podemos encontrar tanto gratuitos como de pago. De la misma forma, para aquellos que conozcan php y html no será difícil desarrollar sus propios themes o plugins, la imaginación es el limite. 
En este capitulo vamos a ver la estructura básica de un theme y de un plugin, como modificar o crear themes y child-themes y unas nociones básicas acerca de crear plugins. A continuación me gustaría hablaros de algunos plugins y themes recomendables de cara a mejorar la visibilidad de la web en Google, para terminar con algunos consejos a la hora de escoger los mismos cuando visitemos el repositorio o un marketplace.

Plugins y Themes, qué son y para qué sirven

Los plugins son los responsables de extender las funcionalidades de nuestra web, los hay desde para efectuar tareas muy simples, como quitar la palabra "category" de la URL, hasta sistemas completos de comercio online (por ejemplo con woocommerce) o de red social (buddypress). Como de serie solo trae el llamado Akismet (un antispam) solo deberemos instalar y activar los plugins que vayamos a utilizar, de esta forma mantendremos la complejidad del panel de control en la justa y necesaria (así como evitaremos la sobrecarga de la web, lo cual repercutiría negativamente en la velocidad de la misma).
Por su parte, el theme será el que determine el aspecto de la web. Puede incluir funcionalidades propias, lo cual hace que a veces la frontera entre plugin y theme pueda ser un tanto difusa, pero su tarea principal es la de mostrarnos los contenidos y "decidir" si la pagina tendrá aspecto de blog o de otra cosa.

Creando tus themes

Estructura básica de un Theme

Un Theme de wordpress puede ser (técnicamente) tan simple como un par de archivos o algo realmente complejo. Pero comenzando por lo mas sencillo, hay 2 archivos imprescindibles index.php y style.css
En index.php es donde tenemos todo el marcado html (la maquetación) y el llamado loop, el pedazo de código con el cual el motor de wordpress recorre la entradas y las muestra. En style.css por su parte, ademas de las propias definiciones de estilos, tenemos la información sobre el theme: nombre, ruta, autor... sin esa información el CMS no podrá identificar el theme.
Aparte de estos 2 archivos hay otros 2 muy importantes, como son functions.php y sidebar.php. El primero es donde se colocan todas esas funcionalidades como habilitar los thumbnails, ajustar los excerps... . El archivo sidebar.php es como su nombre indica para definir el contenido por defecto y la maquetación interna de nuestro sidebar.
Como decía antes, puede haber muchísimos mas archivos en la carpeta de un theme, pero casi todos (salvo Javascript o imágenes) serán herederos de uno de los anteriormente descritos, en el caso de los archivos que muestran el contenido (a partir de ahora templates) tienen una jerarquía, de forma que si el archivo no existe se muestra el siguiente en la cadena, si no el siguiente... así hasta llegar al index.php

Podéis ver esta imagen más grande en http://codex.wordpress.org/images/9/96/wp-template-hierarchy.jpg o una versión interactiva en http://wphierarchy.com
Aunque lo mínimo es index.php y lo máximo (que no hay como tal pero para entendernos) sería crear todos y cada uno de los archivos mostrados en la imagen anterior (cuadros azules y naranjas) más una larga lista de archivos de funciones, js..., lo habitual es crear un fichero para las vistas de entradas individuales (single.php), uno para las paginas (page.php), uno para las categorías (category.php), uno para los resultados de búsqueda (search.php), uno para los no encontrado (404.php), uno para mostrar los comentarios (comments.php) y uno para la home (home.php o front-page.php).
Esa sería la estructura básica, pero seguramente a estas alturas alguno estará pensando que dónde me he dejado header.php y footer.php. Bueno, pues aunque son archivos ampliamente usados, no son imprescindibles en el sentido que si nuestro theme es francamente simple (apenas index.php, style.css y poco mas) podemos incluir la información perteneciente a esos archivos en el mismo index.php. Aun así, y puesto que lo habitual y cómodo es ponerlos aparte, a nuestra lista de archivos necesarios los añadiremos, quedando la lista como sigue:
  • index.php
  • single.php
  • page.php
  • category.php
  • search.php
  • 404.php
  • front-page.php
  • header.php
  • footer.php
  • comments.php
  • functions.php y
  • style.css
Ojo! index.php, style.css y functions.php tienen que tener esos nombres de archivo sí o sí, sin embargo, header y footer pueden realmente tener el nombre que queramos, aunque lo mejor es utilizar esos ya que Wordpress trae funciones pre-escritas para incluirlos, y si utilizamos otro nombre tendríamos que incluirlas de una forma más “artesanal” desaprovechando lo que ya hay.

No hay comentarios:

Publicar un comentario