Una guía rápida (y profundizada) para ganchos de WordPress

Los ganchos de WordPress son trabajo para averiguar si desea obtener el desarrollo de WordPress. Hooks le permite hacer dos cosas: cambiar la funcionalidad predeterminada de WordPress y agregar su propia funcionalidad sin cambiar los archivos básicos de WordPress. Es extremadamente importante asegurarse de que nunca cambie los archivos básicos, pero la modificación y el agregado de las cosas parece imposible sin él. En esta publicación, le mostraré cómo puede hacerlo con bastante facilidad con dos tipos de ganchos: acciones y filtros. Necesitará una comprensión básica de HTML y PHP para ello, pero no demasiado. ¡Penetamos!
La necesidad de ganchos se incorpora a WordPress y se utilizan para modificar o agregar funcionalidades. Supongamos por un momento que WordPress no ofrece ningún gancho. Y suponga que está trabajando con muchas publicaciones programadas y le gustaría enviarle un correo electrónico cuando se publique una publicación. ¿Cómo lo harías tú? Sin ganchos, debe cambiar los archivos básicos. Buscaría el código responsable de publicar una publicación e inmediatamente después de la función que realiza la acción, pegaría su propio código. Esto es dañino por varias razones. Los dos grandes son las actualizaciones y el código incontrolable. Si cambia sus archivos básicos de WordPress, su código funcionará bien, pero se eliminará cuando actualice WordPress a la próxima versión. Debe recordar o ver todos los cambios y luego devolverlos. No es exactamente conveniente. Alternativamente, simplemente no podría actualizar WordPress, pero este sería un gran riesgo de seguridad a largo plazo.
Incluso si logra realizar un seguimiento de los cambios y actualizar WordPress, manténgase con un entorno no estándar con código incontrolable. Otros desarrolladores de WordPress tendrán problemas con su código, y la comunidad en su conjunto no será feliz. Ingrese los ganchos Un gancho hace casi exactamente de lo que hablamos antes (encuentre el lugar donde se publica una publicación, inserte el código), pero reemplaza el horrible bit de unión con un sustituto. Por defecto, existe un sustituyente según la función post-pública, que le permite vincular la funcionalidad allí. Aquí hay una versión abreviada de wp_publish_post (), que puede encontrar en WP-Includes/post.php. Cargue la idea F895F91763E6AD55CA1E
Esta do_action () dice prácticamente: puede vincular su propia función para mí, todo será ejecutado. Entonces, cada vez que WordPress publica una publicación utilizando la función wp_publish_post (), va todos los pasos que deben suceder. Luego cambie a la función do_action (). El primer parámetro es wp_insert_post. Se ejecutará cualquier función relacionada con esta acción wp_insert_post. Veamos un ejemplo. Para crear una función conectada, debe crear un complemento simple, usar el archivo Functions.php del tema o crear un tema infantil y usar las funciones.php desde allí. Creemos un enchufe rápido ahora.
Cree una nueva carpeta en el director de complementos y llámelo “ejemplo de un gancho”. Cree un archivo “Hook-Example.php” en ese directorio e inserte el siguiente código en él:
Cargue la idea f895f91763e6ad55ca1e
Su complemento ahora está listo. Vaya a la sección de complementos del administrador de WordPress y activela. Ahora creemos una función conectada. En el archivo Hook-Example.php, pegue lo siguiente:
Cargue la idea f895f91763e6ad55ca1e
Usamos la función add_action () para anunciar WordPress que nos gustaría wp_insert_post una función en wp_insert_post. El segundo y tercer parámetro son la prioridad y los argumentos. Nos entraremos pronto.
En nuestra función hoced, simplemente estamos definiendo lo que nos gustaría hacer. En este caso, envíenos un correo electrónico. Cada vez que WordPress haya publicado una publicación, buscará todas las funciones conectadas a WP_INSERT_POST y las ejecutará todas. Entonces, ¿qué hice aquí? Hemos agregado funcionalidad a una parte básica de WordPress sin cambiar efectivamente los archivos básicos. Todo lo que necesitaba era una línea de código adicional. ¡Es muy importante! Todo lo que tiene que hacer es escribir una función que haga lo que necesita, luego conectarla a una determinada parte de WordPress. Acciones y filtros Hasta ahora he visto qué es una acción: es un código que se ejecuta en un momento determinado. Se puede usar un filtro para cambiar el contenido antes de que WordPress lo use. Puede usar un filtro para cambiar el texto “Su contraseña es incorrecta” en la página de conexión. Echemos un vistazo a wp-login.php:
Cargue la idea f895f91763e6ad55ca1e
El fragmento del archivo real que se ocupa de la autenticación muestra que los mensajes de error de conexión se muestran utilizando un APPLIC_FILTERS (). Esto es muy similar en lógica a la función do-accy (). Mi segundo parámetro contiene un tipo de datos. Si usa una función conectada basada en mi primer parámetro, puede cambiar estos datos, de lo contrario, lo usaré tal como está. De manera predeterminada, si ingresa un nombre de usuario correcto pero una contraseña incorrecta, consulte la siguiente notificación:
Si cree que esto es un poco incierto, porque expone que el nombre de usuario es correcto, puede conectar una función a los Login_errors para cambiarlo. Aquí está cómo: la idea f895f91763e6ad55ca1e está cargada

Al implementar este cambio, ha agregado un poco más de seguridad al proceso de conexión y puede controlar el texto.
Hooks, acciones, filtros, función hoced y etiquetas Hay cierta confusión en estos términos anteriores, porque a veces se usan indistintamente. Yo mismo hablo mal a veces, ¡así que aclaremos las cosas en caso de que le dé la cabeza a continuación! El gancho es un término general para acciones y filtros. Las acciones le permiten agregar su propia funcionalidad a la funcionalidad existente. Los filtros le permiten cambiar la funcionalidad existente. A veces, la etiqueta de la palabra se usa para referirse a la cadena que indica dónde agrega el gancho. Una función conectada es una función que crea y que agrega o cambia la funcionalidad.
La anatomía de un gancho cuando usamos ganchos, generalmente confiamos en dos funciones: add_action () y add_filter (). Ambas funciones toman cuatro parámetros:

El primer parámetro es la etiqueta. Este es el bit que WordPress le dice dónde conectar su función, cuándo debe ejecutarse.

El segundo parámetro debe ser el nombre de la función conectada.
El tercer parámetro es la prioridad del gancho. Esto determina el orden en que se ejecuta si se conectan más funciones en la misma etiqueta.
El cuarto parámetro define el número de parámetros pasados ​​a esta función. Por defecto, esto es 1, pero algunas etiquetas (como wp_insert_post pueden tener más.
Etiquete el primer parámetro de ambas funciones es una cadena simple que establece cuando se ejecuta la función hoced. Hay muchas, muchas etiquetas que puedes usar. Hay etiquetas de acción que se ejecutan cuando se eliminan las publicaciones, se crean categorías, un usuario está conectado y muchas más. Las etiquetas del filtro se ejecutan en mensajes para taxonomías personalizadas, que muestran el título de publicación, los datos y más. La referencia de Hooks es un buen lugar para comenzar, ¡pero a veces una búsqueda en Google puede ser más efectiva! Tenga en cuenta que algunas etiquetas pueden llamarse ganchos variables. Hay un gancho llamado “{Old_Status} _to_ {new_status}”, por ejemplo. Este gancho simplemente significa que hay una serie de ganchos definidos para combinaciones. Publish_to_trash se ejecutará cuando una publicación de publicación sea Future_TO_Draft La basura can_to_draft se ejecutará cuando una publicación programada se establece en el estado inacabado. Función hoced nuevamente, una cadena simple, que debería ser el nombre exacto de la función. Debido a que este será un nombre de función, debe contener solo letras, números y letras subrayadas.
Tenga mucho cuidado para que esta función sea única. Si nombra una función de “send_email”, puede entrar en conflicto con la función del mismo nombre de otra persona. Es una práctica ordinaria prefijar los nombres de las funciones, algo así como: my_send_email o wpmudev_send_email. También le aconsejo que haga que sus funciones sean legibles para usted. Puede nombrar su función sae (), acortada para “enviar al autor al autor”, pero esta es una práctica extremadamente mala, porque nadie más sabrá lo que esto significa y probablemente olvidará en unos pocos meses. Gancho prioritario La tercera función define la prioridad de un gancho. Cuanto menor sea la prioridad, más rápida se realiza la función. En algunos casos, la orden no es importante, pero en algunos casos es esencial. Si desea enviarle un correo electrónico posterior al público y al autor, el pedido no importa demasiado. Puede usar el valor predeterminado de 10 para ambos: cargue la idea f895f91763e6ad55ca1e
Sin embargo, si desea actualizar algunas estadísticas cada vez que se actualice una publicación y luego notifique al autor, el pedido de repente se vuelve importante:
Cargue la idea f895f91763e6ad55ca1e
Como puede ver, el orden en el que add_action () son lugares no es importante. La segunda llamada tiene una prioridad más baja, por lo que se ejecutará primero. Para los filtros debe tener más cuidado. Debido a que los filtros cambian los datos, pueden anularse entre sí. Si se conectan dos filtros en la misma etiqueta, la prioridad más baja se ejecuta primero. Luego, el que tiene mayor prioridad que puede modificar completamente los datos se ejecuta. A menudo, este es un comportamiento deseable, es algo de lo que debe tener en cuenta. Los cuartos parámetros de parámetros establecen el número de parámetros pasados ​​a nuestra función conectada. Esto es algo que tendrá que seguir, porque depende de lo que esté en el código fuente. Si regresa para ver cómo cambiamos los errores de inicio de sesión, notará la siguiente función: APLICE_FILTERS (‘Login_errors’, $ errores). El primer parámetro es la etiqueta, el resto son argumentos. Solo hay uno aquí, por lo que un argumento se transmite a nuestra función hoced. En el caso de wp_insert_post () puede ver lo siguiente en los archivos básicos: do_action (‘wp_insert_post’, $ post-> id, $ post, true); . El primer parámetro es la etiqueta, el resto son argumentos, por lo que el valor aquí es 3. nuestros propios ganchos El gran trabajo del sistema de gancho es que podemos crear el nuestro. Todo lo que necesitamos son las dos funciones familiares que hemos visto: do_Action () y Apply_filters () para crear nuestro propio filtro para un complemento que muestre productos. En el sótano podríamos escribir: “Gracias por usar nuestro complemento de pantalla de producto”, que permitiríamos a los desarrolladores modificar. Así es como esto se puede hacer:
La idea F895F91763E6AD55CA1CA1ECTIONES se puede agregar de la misma manera. Es posible que desee permitir a los usuarios agregar contenido bajo la descripción de una pantalla de producto:
Cargue la idea f895f91763e6ad55ca1e
He usado la función do_action () para permitir que otros cambien mi funcionalidad. También agregué el objeto como primer parámetro, solo si las personas quieren agregar contenido de contenido específico. Conclusión En este artículo observamos los elementos básicos de los ganchos. Aprendimos la diferencia entre acciones y filtros y cómo usarlos para cambiar efectivamente cómo funciona WordPress. También observamos cómo podemos agregar nuestros propios ganchos a nuestros complementos y temas. Esto es extremadamente útil para que nuestro programa sea amigable. Los ganchos son parte de la API del complemento, si desea obtener más información sobre ellos, le sugiero que lea las páginas relevantes del códice de WordPress. Cuanto más use ganchos, más los amará y los apreciará más el poder y la flexibilidad que ofrece.

Copyright statement: Unless otherwise noted, this article is Collected from the Internet, please keep the source of the article when reprinting.

Check Also

gkOVSBm5B8SgiXmo

Shopify vs WooCommerce – ¿Cuál es la mejor plataforma?(Comparación)

Shopify vs WooCommerce

Leave a Reply

Your email address will not be published. Required fields are marked *