El CMS de WordPress ha cambiado la faz de nuestro Internet y ha permitido que prospere una oleada de nuevas ideas, y su movimiento de código abierto tiene una fuerte presencia arraigada en el software y el desarrollo web.
WordPress es una plataforma de blogs que tiene la capacidad de iniciar muchos otros scripts, como foros web, bolsas de trabajo e incluso un sistema de gestión de contenido de página web clásico.
Repasaremos algunas formas de comenzar a desarrollar complementos para WordPress. Los pasos son relativamente simples y no requieren una gran dedicación al estudio. Un conocimiento rudimentario de PHP sería útil incluso con una comprensión básica de la estructura de archivos y el panel de administración de WordPress.
En este breve tutorial, repasaremos los pasos necesarios para crear un complemento simple de WordPress. La funcionalidad se usará para desarrollar extractos dinámicos basados en el número pasado a nuestra llamada de función.
Deberá cargar el archivo del complemento y activarlo desde el panel de administración, luego haga un seguimiento llamando a nuestra función desde las páginas en las que queremos que aparezca el extracto. Los enlaces al código fuente del complemento completo ya se agregaron más adelante en este artículo 🙂
Más de 60 trucos y trucos de WordPress más buscados (actualizado)
El CMS de WordPress ha cambiado la faz de nuestro Internet y ha permitido que prospere una oleada de nuevas ideas, y su movimiento de código abierto tiene una fuerte presencia. Leer más
¿Por qué desarrollar para WordPress?
Los complementos son una excelente manera de mejorar la funcionalidad de su blog agregando funciones adicionales. Estos se pueden colocar en cualquier lugar dentro de su plantilla mediante ganchos de función.
Con el tiempo, la extensibilidad del sistema de complementos de WordPress ha permitido un enorme crecimiento y cientos de piezas de software enviadas por desarrolladores. WordPress ofrece explícitamente funciones tan avanzadas en su CMS que los complementos únicos son pocos y distantes entre sí.
Como desarrollador, usted tiene control total sobre los detalles del backend de su weblog. Contratar a un desarrollador de PHP para crear un complemento del sistema costaría mucho más de lo que puede imaginar, y la API es relativamente fácil de usar y aprender por sí mismo.
Como argumento secundario, desarrollar sobre WordPress es una excelente práctica para sintonizarte con otras áreas. La creación de complementos más pequeños y widgets de barra lateral en WordPress lo ayudará a desarrollar una comprensión de cómo funciona el sistema de back-end.
Esto no se limita solo a WordPress, ya que obtendrá una comprensión más profunda de la gran mayoría de los sistemas de contenido.
1. Estructura de carpetas de WP
Una introducción a la estructura de carpetas de WordPress mostrará los directorios de aplicaciones principales. Dentro de wp-content, encontrarás un complementos directorio. Aquí es donde se alojarán todos sus complementos individuales, ya sean archivos individuales o subdirectorios con nombres adecuados.
Para complementos más pequeños que solo requieren un único archivo .php, tiene la opción de colocarlo directamente en el directorio complementos/. Sin embargo, cuando comienza a desarrollar aplicaciones más complicadas, es mucho más útil crear un subdirectorio con el nombre de su complemento.
En el interior, puede incluir JavaScript, CSS y HTML junto con sus funciones de PHP.
A readme.txt
El archivo también puede ser útil si planea ofrecer su complemento para descargar. Este archivo debe incluir su nombre y lo que hace el complemento. Como autor, también puede considerar incluir detalles sobre cada revisión y qué actualizaciones han aparecido.
2. Iniciar su archivo PHP
Al crear un nuevo complemento, deberá comenzar con un archivo PHP simple. Esto puede tener cualquier nombre, pero generalmente debe reflejar el nombre oficial de su complemento.
Entonces, por ejemplo, he creado nuestro código base y he llamado a mi archivo hongkiat-excerpt.phps (guarde y cambie el nombre del archivo a .php).
Las primeras líneas de tu plug-in debe ser información de comentario para el motor de análisis.
Esto es extremadamente importante ya que WordPress no podrá procesar su archivo sin él. A continuación se muestra un fragmento de código de ejemplo que puede copiar y moldear a su gusto.
<?php /* Plugin Name: Plugin Name here Plugin URI: http://www.yourpluginurlhere.com/ Version: Current Version Author: Name please Description: What does your plugin do and what features does it offer... */
El nombre del complemento es lo que aparecerá en su panel de administración cuando vaya a activarlo. Lo mismo ocurre con el URI, que se colocará en el panel de detalles dentro del panel de complementos.
Aunque no es obligatorio incluir una versión o descripción, hace que su complemento se vea mucho más profesional.
3. Convenciones de nomenclatura y mejores prácticas de WordPress
Hay algunas formas de estructurar realmente su complemento.
Muchas veces, los desarrolladores de PHP crearán un sistema de clases completo para evitar colisiones con funciones y nombres de variables. Si no está familiarizado con la funcionalidad OOP avanzada de PHP, entonces es mejor escribir su código en funciones de muestra.
Entonces, para nuestro código de ejemplo, escribiremos una sola función para albergar nuestros datos. También necesitamos definir algunas variables que son cruciales para implementar dentro de nuestros archivos de plantilla.
A continuación se muestra un fragmento de código de ejemplo tomado de nuestro archivo de complemento con la lógica central eliminada.
Al escribir su código de muestra, es mejor seguir las normas y guías establecidas por WordPress. Dado que hay tantas funciones internas ya definidas, puede evitar los duplicados anteponiendo una etiqueta a todas sus variables y nombres de funciones.
<?php define("HK_EXAMPLE_CONSTANT", "this is a value"); function hk_example_function( $limit ) { // Some code goes here. } ?>
En el ejemplo anterior, anteponemos todos nuestros nombres de configuración con Hongkiat.
Esto se puede reemplazar con cualquier palabra clave de su elección, generalmente relacionada con el nombre de su complemento. El código anterior es solo configuraciones de muestra y no debería pertenecer a nuestro complemento final.
Esto es solo para darle una idea de cómo deben escribirse los nombres de las variables y las llamadas a funciones.
4. Inmersión en filtros y acciones
Hay otro concepto que vale la pena mencionar antes de pasar a nuestro código sin formato.
Comportamiento y filtros son dos conceptos completamente diferentes que se relacionan genuinamente con las formas en que manipulan los datos de los complementos.
Estos dos bits de código vienen de serie en la API de WordPress. Los filtros y las acciones permiten a los desarrolladores de complementos actualizar fragmentos de código en todo el panel de administración de WordPress relacionados con su nuevo complemento.
Esto significa que puede agregar una nueva pestaña en la barra lateral o enlaces de configuración adicionales para sus opciones de complemento.
Entendiendo add_filter()
A filtrar se usa en un poco de texto o datos que se pasan a WordPress. Con los filtros, es literalmente capaz de filtrar contenido a través de sus propias funciones escritas personalizadas para cambiar los datos de cualquier manera.
Por ejemplo, puede crear un filtro para cambiar $the_content
que es una variable establecida por WordPress que contiene todo el contenido de la publicación de un artículo de WordPress.
Para nuestro plug-in tomaremos $the_content
y acortar la longitud de los caracteres en un extracto.
Los filtros son útiles cuando escribe complementos para personalizar la apariencia de su blog. Estos son especialmente populares cuando se escriben widgets de barra lateral o funciones más pequeñas para cambiar la forma en que se debe mostrar una publicación.
A continuación se muestra una línea de código de muestra que muestra cómo aplicar un filtro.
add_filter('wp_title', 'hongkiat_func');
Aquí estamos agregando un filtro en el título de la página de WordPress. Tenga en cuenta que este código no se relaciona con nuestro complemento oficial y solo se usa como ejemplo aquí.
El add_filter
La función es nativa de WordPress y se usa para agregar un nuevo filtro a una variable que se encuentra dentro del contenido de la página.
En la línea de arriba estamos apuntando $wp_title
que contiene el título de nuestra página actual.
Luego estamos pasando esta variable a una función falsa titulada hongkiat_func()
que luego podría manipular y devolver una nueva etiqueta de título para cualquier propósito.
Entendiendo add_action()
Las acciones son similares a los filtros en el sentido de que no funcionan en bits de datos, sino que se dirigen a áreas predefinidas en sus plantillas y panel de administración. Como ejemplo, puede aplicar una acción siempre que actualice o edite el contenido de una página.
WordPress ofrece una lista completa de acciones en la documentación de su API. A continuación se muestra una pequeña lista de acciones de ejemplo para que se familiarice con algunas de las áreas objetivo predefinidas.
- publicar_post – llamado cuando se publica una publicación o cuando el estado cambia a «publicado»
- guardar_post – llamado cuando se crea una publicación/página desde el inicio o se actualiza
- cabeza_wp – se llama cuando se carga la plantilla y se ejecuta el
wp_head()
función - loop_end – llamado inmediatamente después de que la publicación final haya sido procesada a través del bucle de WordPress
- trackback_post – llamado cada vez que se agrega un nuevo trackback en una publicación
Una vez más, podemos ver cuán simple se reduce a este fragmento de código. Si puede comprender la diferencia entre acciones y filtros, estará mucho más cerca de crear complementos de WordPress completos y funcionales.
A continuación hay otra línea de código que inicializa una función de acción en el save_post
gancho. Para aclarar nuevamente, esto no pertenece a nuestro complemento de desarrollo actual y solo se usa como un código de ejemplo para comprender el add_action()
función.
add_action('save_post', 'notify');
Así que aquí vemos una configuración similar a la anterior con add_filter()
. Necesitamos 2 variables, la primera contiene el nombre de nuestro gancho al que nos dirigimos.
En este caso save_post
lo que significa que cada vez que se guarda una nueva publicación, llamaremos a nuestra función definida en la segunda posición (notify()
). Obviamente, puede actualizar la notificación para que sea el nombre de la función que desea ejecutar, sin embargo, esto no es necesario para nuestro complemento de ejemplo actual.
Terminando nuestra lógica de complemento
Terminando en nuestro camino, agregaremos nuestra función final directamente en nuestro archivo de complemento. La documentación de la API es muy específica y proporciona un recurso excelente para los desarrolladores que pueden tener preguntas avanzadas.
El material puede parecer difícil si no está familiarizado con PHP, pero tómese su tiempo con los conceptos y las cosas comenzarán a fluir naturalmente.
La función a continuación debe agregarse directamente después del comentario del encabezado de su complemento. Alternativamente, esto también podría colocarse dentro de su tema functions.php
archivo.
El código se utiliza para crear contenido de publicación dinámico basado en un rango limitado de caracteres.
Entonces, para nuestro ejemplo, podemos limitar los extractos de la historia a solo 55 caracteres con el hk_trim_content()
función. Puede llamar fácilmente a este fragmento de código desde un widget de barra lateral o uno de sus archivos de tema para reemplazar $the_content
.
<?php function hk_trim_content( $limit ) { $content = explode( ' ', get_the_content(), $limit ); if ( count( $content ) >= $limit ) { array_pop( $content ); $content = implode(" ",$content).'...'; } else { $content = implode(" ",$content); } $content = preg_replace('/[.+]/','', $content); $content = apply_filters('the_content', $content); return $content; } ?>
No se debe esperar que comprenda completamente todas las variables internas o funciones utilizadas aquí. Solo obtener una comprensión general de cómo deben escribirse sus funciones y cómo se vería un conjunto de ejemplos es un muy buen comienzo.
También puede notar que estamos usando una llamada para apply_filters
que es otra función específica de WordPress.
Este es otro aspecto que no necesita comprender por completo, pero ayuda con la programación futura sobre WP. Consulte la página de referencia de apply_filters para obtener más detalles y preguntas frecuentes sobre el tema.
La función central anterior se llama hk_trim_content()
. Esto solo requiere 1 parámetro llamado $limit
.
Esto también podría acortarse a $lim
que debe almacenar un número entero que especifique a cuántos caracteres limitar su extracto. El contenido se utiliza en páginas de publicaciones completas y también en páginas estáticas (sobre nosotros, contacto).
Por lo tanto, para llamar a esta función necesitaríamos agregar el parámetro en nuestros archivos de plantilla. Esto se colocaría en algún lugar posiblemente en su index.php
o loop.php
archivo (s) y requerirá que instale el complemento primero. Ejemplo a continuación:
<?php echo hk_trim_content(55); // display page content limited at 55 chars ?>
Instalación y ejecución del complemento
He creado un archivo de muestra para la demostración del complemento si desea omitir la codificación fija.
Simplemente descargue este archivo (guárdelo y cámbiele el nombre a .php
) o copie/pegue el código en un nuevo documento PHP y súbalo a su /wp-content/plugins
directorio.
Una vez completado, querrá acceder al panel de administración de WordPress y explorar su conjunto actual de complementos para la demostración que acaba de instalar. Una vez que active nada nuevo sucederá, no hasta que agreguemos manualmente nuestra llamada de función.
Para hacer esto simplemente navegue Appearance -> Editor
y busca single.php
.
Este archivo contiene toda la plantilla HTML/CSS para la página básica de publicación de artículos. Desplácese hacia abajo hasta encontrar the_content()
y reemplácelo con el código de ejemplo anterior. Esto limitará todas las páginas de su artículo a 55 caracteres sin importar qué vista se esté utilizando.
También puede agregar esta función a páginas similares en su directorio de plantillas, como search.php
o archive.php
.
Conclusión
Estos son algunos de los conceptos básicos para comenzar a trabajar en el desarrollo de WordPress. El sistema de complementos es amplio y contiene una gran cantidad de funciones internas.
Si ya tiene una idea para un complemento, pruébelo en una instalación local de WordPress para practicar estos temas.
Si todavía está confundido con gran parte de la información, puede revisar la documentación de WordPress y buscar su respuesta allí.
La comunidad de desarrollo está llena de usuarios útiles y los foros contienen archivos con preguntas de años atrás.