[WordPress] Añadiendo funcionalidad a un plugin en WordPress

Sasousuke WordPressHola lector(a) y/o seguidor(a). Continuando con la anterior entrada, vamos a darle una funcionalidad a un plugin (complemento) que estamos desarrollando en función de algo que queremos que se haga y que sus resultados se evidencien en una mejora sustancial de la publicación de nuestro contenido en el sitio creado con WordPress. Dale intro.

Antes que nada definir lo que va a realizar el plugin, ya que de ello depende el nombre que le daremos. A manera de ejemplo voy a definir que se añadirá a cada título de entrada una palabra como “Exclusivo” o “Ultimo chisme “, usted escoja el de su preferencia. Por tanto el plugin se llamará exclusivo-entrada-plugin. Si no sabes como se prepara el escenario, pégate en este enlace y dale taller.

Ahora un poco de lectura en la documentación de desarrollo de plugins de Wordpres. Según ahí refieren, a menos que esa funcionalidad nueva sea de gran envergadura y de aspecto crítico (léase la mamasita de recontrabusacado) casi todas las funciones adicionales son derivados de las funciones básicas nativas que trae incorporado WordPress, así que primero busca bien si eso que quieres hacer ya viene incluido. Como lo que queremos hacer es algo relacionado con las visualizaciones de los títulos de las entradas, hay que buscar en el apartado de filtros que es lugar donde son aplicados los mecanismos de leer, mostrar y modificar las páginas o entradas, ya sea en pantalla o al imprimir.

Por tanto en nuestro archivo fuente con nombre exclusivo-entrada-plugin.php vamos a pegarle este contenido:

<?php
/*
Plugin Name: Exclusivo entrada complemento
Plugin URI: https://github.com/sasousuke/exclusivo-entrada-plugin
Description: Plugin de WordPress para añadir una frase o palabra ante cada título de entrada a mostrar
Version: 1.0.0
Author: Ernesto Tur Laurencio
Author URI: https://twitter.com/sasousuke
*/
add_filter( 'the_title', 'exclusivo_entrada_plugin_cambiar_titulo', 10, 2 ); #1
function exclusivo_entrada_plugin_cambiar_titulo( $title, $id ) { #2
 $frase = '[Exclusiva] '; #3
 $title = $frase . $title; #4
 return $title; #5
}
?>

Ahora explicando un poco lo anterior:

  1. Añadirmos un disparador (hook) en el evento “the_title” para que nos entregue el título a mostrar y que nosotros podamos manipularlo mediante una función propia. Los parámetros 10 y 2 son los tradicioanles antes este tipo de modificaciones.
  2. Declaramos una función que modificará el título que nos brinda WordPress. Siempre es bueno leerse bien la documentación ya que aunque no se utiliza el parámetro id, es recomendable declararlo para evitar posibles interferencias. Como función al fin, es casi necesario que el nombre no coincida con ninguna otra que pudiera existir en todo el entorno, recomiendo anteponerle el nombre del complemento y listo. Detalle a no olvidar: las funciones solo aceptan letras, numeros y subrallado, por tanto cambie el singo “-” por “_”.
  3. Se declara la frase que encabezará todos los títulos a mostrar.
  4. Se modifica el título con la frase de encabezado.
  5. Se devuelve el título ya modificado para que WordPress siga haciéndole las cosillas normales.

Guardamos todo, activamos el plugin y compruebe el resultado accediendo a la URL Inicio de su sitio. Aquí les muestro las capturas.

Antes de activar:

Después de activar:

Como se puede apreciar el poder está en la fuerza, quiero decir … en el conocimiento. Ahora ya sabemos que podemos hacer, lo que falta es darle el toque “profesional” al asunto. ¿Cuál sería? Bueno que esa frase que encabeza el título de la entrada fuera una que se pudiera configurar sin necesidad de modificar el código fuente del plugin. Pues esa tarea la dejamos para la próxima entrada.

Enlace permanente a este artículo: http://sasousuke.cubava.cu/2018/03/07/wordpress-anadiendo-funcionalidad-a-un-plugin-en-wordpress/