Temas (XX) El archivo functions en wordpress

Aunque ya hemos usado a lo largo de todo el tutorial de la creación de temas el archivo functions es interesante que lo estudiemos de forma independiente, a pesar de que no tiene un reflejo directo en lo que vemos en pantalla como otros archivos de plantilla.

Su función es hacer que nuestro tema funcione conteniendo lo que es conocido como el código de bibliotecas. Si hay algún código que las plantillas utilicen de forma genérica, en lugar de que esté en cada uno de los archivos, se debe de poner en él, ya que WP lo incluye de form automática en la ejecución de todas las plantillas.

También hay que considerar que al añadir funcionalidades debemos de considerar si el código pertenecerá al archivo functions.php o a algún plugin, por ello podemos definir que si el usuario puede configurar dicha configuración, estaríamos hablando de un plugin mientras que si no es configurable no y por lo tanto estaría dentro de nuestro archivo functions.php.

Como hemos visto ya a lo largo de este curso, el archivo functions, registra y configura multitud de opciones, como los archivos css y js, así como los sidebars, menús… e incluso podemos crear funciones para shortcodes.

De este modo este archivo puede ampliar las características de WordPress, o hacer que nuestra plantilla mantenga unas funcionalidades específicas.

Personalmente creo que aquí se encuentra otro de los puntos fuertes de WordPress, ya que este archivo al incluirse en todas las plantillas podemos utilizarlo como un archivo comodín. Por ejemplo, supongamos que queremos introducir un texto en algún tipo de plantilla, tan solo deberíamos de introducir el texto en una función dentro del archivo functions:

function texto(){
    $texto = "texto de muestra";
    return $texto;
}

Y tan solo nos quedaría invocar a la función en un echo para poder mostrar el resultado en cualquier plantilla que queramos.

echo texto();

Naturalmente esto sería mucho más útil para otro tipo de funciones, pero para ilustrar el ejemplo es suficiente, ahora imaginemos cualquier funcionalidad que deseemos trabajar, desde mostrar contenidos, envíos de mails, tratamiento de datos… y es más, pensemos en lo que podemos hacer utilizando las plantillas específicas de páginas y el archivo functions. Las posibilidades son prácticamente infinitas, y es por lo que me gusta pensar que WordPress no es un sistema de blogs, como dicen sus detractores, si no más bien un framework de trabajo que nos ayuda continuamente en el desarrollo de aplicaciones.