¿Por qué elegir desarrollar un plugin para WordPress?
WordPress, como el sistema de gestión de contenidos más popular a nivel mundial, debe su gran capacidad de expansión principalmente a los plugins. Al desarrollar plugins, puedes agregar cualquier función personalizada a tu sitio web sin necesidad de modificar los archivos centrales, lo que garantiza la compatibilidad durante las actualizaciones de WordPress. Ya sea para satisfacer las necesidades de un proyecto específico, resolver un problema común o compartir tus soluciones con la comunidad y generar ingresos, el desarrollo de plugins es una habilidad de gran valor.
Aprender a desarrollar plugins no solo te permitirá comprender en profundidad el funcionamiento de WordPress, como el sistema de ganchos (Hooks) y los códigos cortos (Shortcodes), sino que también mejorará tus habilidades de programación en PHP. Desde la mejora de funciones simples hasta la integración de aplicaciones complejas, todo es posible.
Configura tu entorno de desarrollo de plugins
Antes de comenzar a escribir código, es esencial disponer de un entorno de desarrollo local adecuado. Esto te permitirá realizar pruebas y depuraciones de manera segura, sin afectar al sitio web en línea.
Lecturas recomendadas Guía definitiva para el desarrollo de complementos de WordPress: desde cero hasta la creación de un complemento profesional.。
Configurar el entorno del servidor local
Se recomienda utilizar herramientas de desarrollo local integradas, como Local by Flywheel, DevKinsta o XAMPP. Estas herramientas se instalan con un solo clic y incluyen Apache/Nginx, PHP y MySQL. Asegúrese de que la versión de PHP que utiliza sea compatible con el servidor destino; generalmente se recomienda utilizar PHP 7.4 o una versión más reciente para obtener un mejor rendimiento y mayor seguridad.
Instalar y configurar WordPress
Instale una nueva instancia de WordPress en su servidor local. Se recomienda utilizar el tema predeterminado (por ejemplo, la serie Twenty Twenty) para realizar pruebas de desarrollo, a fin de evitar problemas de compatibilidad con los temas.wp-config.phpEn el archivo, se ha activado.WP_DEBUGSon constantes que te ayudarán a detectar errores rápidamente durante el proceso de desarrollo.
define( 'WP_DEBUG', true ); Preparar el editor de código
Elige un potente editor de código, como Visual Studio Code, PhpStorm o Sublime Text. Instala las extensiones relevantes, como la detección inteligente de PHP o los fragmentos de código para WordPress; estas te ayudarán a mejorar significativamente tu eficiencia al programar.
Crea tu primer archivo de plugin.
Un plugin de WordPress es, en esencia, uno o más componentes adicionales que se encuentran dentro del sistema de WordPress y que proporcionan funcionalidades adicionales o mejoran el funcionamiento del mismo./wp-content/plugins/Los archivos PHP que se encuentran en el directorio. Ahora, comencemos con la estructura más básica.
Escribir las notas de cabecera del complemento (plugin).
Cada plugin debe contener una nota de cabecera en un formato estándar, a través de la cual WordPress puede identificar la información del plugin. En tu directorio de plugins (por ejemplo…/wp-content/plugins/my-first-plugin/En el archivo app.js, crea uno llamadomy-first-plugin.phpEl archivo principal.
Lecturas recomendadas De principiante a experto: guía completa para el desarrollo de plugins de WordPress。
<?php
/**
* Plugin Name: 我的第一个插件
* Plugin URI: https://example.com/my-first-plugin
* Description: 这是一个用于学习的简单WordPress插件。
* Version: 1.0.0
* Author: 你的名字
* Author URI: https://example.com
* License: GPL v2 or later
* Text Domain: my-first-plugin
* Domain Path: /languages
*/ Esta nota de comentario define el nombre, la descripción y otras informaciones que se muestran para el plugin en la interfaz de administración del backend de WordPress.Text DomainSe utiliza para la traducción internacional.
Construir un marco de seguridad básico para plugins
Para evitar que se acceda directamente a los archivos de tu plugin, puedes agregar un código de protección en la parte superior del archivo. Esta es una práctica recomendada para el desarrollo de plugins en WordPress.
// 防止直接访问
if ( ! defined( 'ABSPATH' ) ) {
exit; // 如果未定义ABSPATH(WordPress根目录的绝对路径),则退出
} ABSPATHEs una constante definida por WordPress que representa la ruta absoluta de su instalación. Al verificar si esta constante existe, se puede evitar efectivamente que usuarios externos accedan directamente a los archivos de tu plugin a través de una URL.
Implementar las funciones principales: agregar un menú de administración y opciones de configuración.
Un complemento completo suele necesitar una interfaz de configuración en el backend de WordPress. Vamos a agregar una página de menú de administración sencilla utilizando la API proporcionada por WordPress.
Usar una función para agregar el menú de administración de nivel superior.
Vamos a utilizar…add_action()La función se ha montado (es decir, se ha asociado correctamente con el sistema o el componente en el que se utiliza).admin_menuEn el gancho, se añade así un elemento de menú en el backend. Continúa agregando el siguiente código en tu archivo principal del plugin.
// 添加管理菜单
function mfp_add_admin_menu() {
add_menu_page(
'我的第一个插件设置', // 页面标题
'我的插件', // 菜单标题
'manage_options', // 所需权限(管理员)
'my-first-plugin', // 菜单slug
'mfp_settings_page', // 显示页面内容的回调函数
'dashicons-admin-generic', // 图标(使用Dashicons)
80 // 菜单位置
);
}
add_action( 'admin_menu', 'mfp_add_admin_menu' ); Aquí,add_menu_page()La función se utiliza para crear un menú principal. Los parámetros definen el título de la página, el título del menú, los permisos de acceso, el identificador único (slug), la función de callback que se utilizará para generar el contenido de la página, la imagen del ícono, y la posición del menú en la barra lateral.
Lecturas recomendadas Guía completa para el desarrollo de plugins de WordPress: desde cero hasta su publicación en la tienda.。
Crear una función de callback para la página de configuración.
Ahora, necesitamos definir lo que se mencionó anteriormente.mfp_settings_page()La función generará el contenido HTML de la página de administración.
// 设置页面回调函数
function mfp_settings_page() {
// 检查用户权限
if ( ! current_user_can( 'manage_options' ) ) {
return;
}
?>
<div class="wrap">
<h1>¿¿¿¿php echo esc_html( get_admin_page_title() ); ?></h1>
<p>¡Bienvenido a la página de configuración de mi primer plugin! Aquí es donde se agregarán formularios y opciones en el futuro.</p>
<form action="/es/options.php/" method="post" data-trp-original-action="options.php">
<?php
// 输出设置字段、非ce等(后续扩展)
settings_fields( 'mfp_options_group' );
do_settings_sections( 'my-first-plugin' );
submit_button( '保存设置' );
?>
<input type="hidden" name="trp-form-language" value="es"/></form>
</div>
¿php?
} Esta función primero verifica si el usuario actual cuenta con…manage_optionsPermisos (generalmente para el administrador), y luego se genera un marco simple para la página de configuración.settings_fields()Ydo_settings_sections()Esto está reservado para configurar las opciones de registro de API para el uso posterior con WordPress.
Añadir una función frontal sencilla al plugin.
Además de la interfaz de administración en segundo plano, los plugins suelen proporcionar funcionalidades para la parte frontal ( frontend) de un sitio web. Vamos a crear un código corto (shortcode) sencillo que permita a los usuarios utilizar dichas funcionalidades en sus artículos o páginas.
Usar una función para registrar códigos cortos.
Los códigos cortos permiten a los usuarios utilizar…[shortcode]Estos etiquetas simples permiten insertar funciones dinámicas en el contenido. Se utilizan para ello.add_shortcode()La función se registra.
// 注册一个短代码
function mfp_hello_world_shortcode( $atts ) {
// 短码属性,设置默认值
$atts = shortcode_atts(
array(
'name' => '访客',
),
$atts,
'mfp_hello'
);
// 安全地输出内容
return '<p>Hola, '. esc_html($atts['name'])'. ‘¡Este es el saludo generado por mi plugin.</p>'php
add_shortcode('mfp_hello', 'mfp_hello_world_shortcode'); add_shortcode()La función acepta dos parámetros: el nombre de la etiqueta de código corto (el nombre que utiliza el usuario) y la función de procesamiento correspondiente.shortcode_atts()La función se utiliza para combinar los atributos ingresados por el usuario con los valores predeterminados, con el fin de garantizar la robustez del código.
Prueba código corto en el front end.
Después de guardar el archivo del plugin, visite la página de “Plugins” en el panel de administración de WordPress y active “Mi primer plugin”. A continuación, cree o edite un artículo y ingrese el código del plugin directamente en el editor de contenido.[mfp_hello name="小明"]Después de publicar el artículo, la página frontal mostrará: “Hola, Xiaoming! Este es el saludo generado por mi plugin”. Si no se proporciona el atributo `name`, como…[mfp_hello]En ese caso, se mostrará el mensaje predeterminado: “Hola, visitante”.
resúmenes
A través de esta guía, has completado el proceso completo para crear un plugin básico de WordPress desde cero. Has aprendido sobre la estructura fundamental de un plugin, la importancia de las notas de cabecera, cómo agregar un menú de administración en el backend y cómo crear un código corto y práctico para la parte frontal del sitio web. Todo esto constituye la base para el desarrollo de plugins en WordPress.
El verdadero viaje hacia el desarrollo de plugins acaba de comenzar. A continuación, puedes explorar el potente API de configuración de WordPress para crear opciones que puedan ser guardadas, y utilizar los ganchos de acciones (action hooks) para personalizar aún más el funcionamiento del sistema.add_action()Hookes para filtrosadd_filter()Vamos a modificar el comportamiento central del plugin, aprender cómo agregar soporte de internacionalización a los mismos y cómo manejar los datos de los usuarios de manera segura. Recuerda que seguir los estándares de codificación de WordPress y prestar atención a la seguridad es clave para desarrollar plugins de alta calidad.
FAQ Preguntas más frecuentes
¿Qué conocimientos previos se necesitan para desarrollar un plugin de WordPress?
Es necesario que cuentes con conocimientos básicos de programación en PHP, así como de HTML y CSS. Además, debes estar familiarizado con las operaciones básicas de WordPress (como publicar artículos e instalar temas y plugins). No es obligatorio tener conocimientos profundos en programación orientada a objetos (POO), pero serían de gran ayuda para desarrollar plugins complejos.
¿Debe tener el nombre del archivo principal del plugin el mismo nombre que el nombre de la carpeta?
No es obligatorio, pero se trata de una práctica recomendada encarecidamente que ayuda a mantener una estructura más clara. El archivo PHP del plugin principal puede tener cualquier nombre, pero las notas de encabezado deben estar correctamente formateadas, y el archivo debe encontrarse dentro de la carpeta que alberga el propio plugin. El nombre de la carpeta suele coincidir con el “slug” (nombre corto y descriptivo) del plugin.
¿Cómo depurar el código de mi complemento?
Además de activar…WP_DEBUGTambién puedes utilizar…error_log()La función escrive información de depuración en el registro de errores del servidor, o la utiliza de alguna otra manera.var_dump()Ywp_die()Realiza una comprobación de la salida (únicamente para entornos de desarrollo). Utilizar plugins de depuración como Query Monitor también es una opción muy eficiente.
¿Cómo puedo publicar el plugin que he desarrollado en el directorio oficial de plugins de WordPress?
En primer lugar, debes asegurarte de que el código del plugin cumpla con los requisitos de publicación de WordPress, lo que incluye una licencia compatible con GPL, calidad del código, seguridad e internacionalización. A continuación, solicita un repositorio SVN en WordPress.org, sube tu código allí y sigue el proceso de revisión. La página oficial proporciona un manual detallado para el envío de plugins.
¿Qué sigue, qué sigue?
Lectura ampliada y conocimientos prácticos
Los siguientes están relacionados con el tema de este artículo y son adecuados para una lectura más profunda. A menudo es mejor priorizar empezando por el artículo que más se acerque a su problema actual y ampliando gradualmente a los temas circundantes.
- Prólogo: ¿Por qué elegir WordPress para el desarrollo?
- Análisis en profundidad del CDN: Guía técnica sobre las principales tecnologías para la aceleración de sitios web, la protección de seguridad y la optimización de costos
- Guía técnica para mejorar el ranking de sitios web: Estrategias clave de optimización SEO que no puedes ignorar
- Guía de introducción a los servidores en la nube: análisis completo de los tipos, las ventajas y los escenarios de aplicación
- Descripción detallada de la tecnología CDN: desde su funcionamiento hasta la práctica de selección de soluciones, una guía para mejorar el rendimiento y la seguridad de los sitios web