¿Cómo se convierte en un solo complemento la base de un ecosistema tecnológico floreciente? Parcialmente aprovechando la extensibilidad de que el sistema de ganchos basado en WordPress hace posible los eventos de WordPress. ¿No parecen tener suerte algunos complementos de WordPress? WooCommerce, descargas digitales fáciles, formularios de gravedad: cada uno de estos complementos es una industria completa, con docenas de extensiones de terceros que aumentan su funcionalidad en todas las direcciones imaginables, mientras aprovechan las fortalezas únicas del complemento. Mientras tanto, la mayoría de los otros complementos, como el complemento redundante de la semana, son totalmente autónomos.
¿Cómo se convierte en un solo complemento la base de un ecosistema tecnológico floreciente? Hay muchas respuestas: ser las primeras en el mercado, construir un gran producto, tener un conocimiento de marketing y todos los demás. Pero hoy analizaremos una parte importante de la respuesta técnica: extensibilidad, a través del sistema de ganchos basados en WordPress. Hoy, utilizaremos un ejemplo de complemento de trabajo para cubrir las dos funciones clave que hacen que la extensibilidad del complemento: Apply_Filters () y do_action (). Algo más antes de comenzar. Si quieres aprender el desarrollo de WordPress, escribí la mejor guía para ello:
¡La mejor manera de aprender el desarrollo de WordPress y ejecutar hoy!

En funcionamiento está nuestro curso completo “Aprende el desarrollo de WordPress”. Ahora, en la tercera edición actualizada y extendida, ha ayudado a cientos de compradores felices a aprender el desarrollo de WordPress de una manera rápida, inteligente y completa. Esto es lo que tienen que decir:
“Creo que cualquiera está interesado en aprender el desarrollo de WordPress necesita este curso. Ver videos era como si estuvieran muchas luces encendidas “. -Jason, desarrollador de WordPress “Otros cursos que casi siempre he intentado no tienen explicaciones claras de lo que WordPress hace las cosas de cierta manera o cómo funcionan las cosas juntas. En funcionamiento hace todo esto y todo se explica claramente en un lenguaje fácil de entender “. -Carolina, freelancer y corre ahora
¡Está bien, hundamos!
Extensiones: complementos para complementos, por lo que está claro de lo que estamos hablando cuando decimos “extensiones”, tome un ejemplo: Stripe for WoCommerce. Esta extensión no hace nada si aún no tiene WooCommerce. Sin embargo, si lo hace, compre e instale rayas para WooCommerce como un complemento separado y extienda la funcionalidad de WooCommerce, para que pueda comenzar a aceptar pagos a través de la pasarela de pago de stripe. Por lo tanto, tiene un complemento que mejora otro complemento de una manera específica. Esta es una extensión. Son los adverbios del ecosistema tecnológico de WordPress. Cómo funcionan las extensiones: APLICE_FILTERS () y do_Action () WordPress Extendible complementos usan dos funciones: APLICE_FILTERS () y DO_ACTION (), las dos formas de crear WordPress.
Siguiente pregunta: ¿Cómo hizo eso WooCommerce? Después de todo, es fácil imaginar que escriba un complemento de comercio electrónico que “funciona solo con la puerta de enlace con la que trabajan”. Entonces, si realmente quieres rayar, debes destruir WooCommerce y probablemente puedas crear tu propio propietario llamado SlipEcommerce, quien se convierte en un competidor para WooCommerce, o simplemente vivir en el único sitio web del cliente que podría pagarte por el desarrollo y remedios de errores en progreso. Es un desastre contemplado, pero afortunadamente WoCommerce hace algo mucho mejor. Use dos funciones liberalmente: Apply_Filters () y do_action (). Estas dos funciones son las dos formas de crear ganchos en WordPress y una parte fundamental del sistema WordPress Hooks en general.apply_filters () y do_action () tienen una diferencia simple:
APLICE_FILTERS () es la forma en que conecta las funciones del filtro.
Do_action () es la forma en que conectas las funciones de acción.
Veamos un ejemplo vivo para ver cómo funciona. Un ejemplo de trabajo: un complemento y su extensión para nuestro ejemplo, utilizaremos un complemento funcional “Cotización del día”, además de una extensión que cambia ese complemento de formas específicas. Para rastrear y ver el código completo, descargue ambos complementos como un archivo zip. Complemento original: cotización del día en que este complemento extrae de la API expuesta por una biblioteca de citas externas, almacenando la cotización que resulta como un tránsito de WordPress que se actualiza cada 24 horas. Regrese a este artículo en cualquier momento y verá la cita aleatoria ese día sobre la “vida”, que debería ser lo suficientemente grande.
El complemento predeterminado se muestra utilizando un código corto y se muestra de la siguiente manera: La extensión: la cita Carl Sagan, como sabemos, el problema con la mayoría de las citas es que Carl Sagan no los dijo, el astrónomo que hizo una carrera para soplar el Mente colectiva de la tierra desde finales del siglo XX. Nuestra extensión resuelve este problema, utilizando una serie de herramientas: un encabezado grande que indica la fecha de hoy y que la cita es de Carl Sagan,
Algunos reemplazos de palabras específicas para convertir cualquier cita en algo que diría Carl Sagan,
Los autores de las citas originales se cortan y las citas ahora se asignan correctamente a Carl Sagan y
En cada cita hay un gráfico de un imitador Carl Sagan que aniquila por completo su comprensión más fundamental sobre la realidad, como un recordatorio multimedia como las citas de Carl Sagan.
Aquí está el complemento, más la extensión, en acción:
Llame a la cita de Sagan para el 9 de febrero de 2022:
El código para hacer esto funciona en dos pasos:
El complemento original define los ganchos, tanto los ganchos de acción como los ganchos de filtro, permitiendo que el código externo modifique o agregue a su propio código. El complemento usa Apply_Filters () y do_action () para lograrlo.
La extensión define las funciones conectadas, tanto las acciones como los filtros, lo que cambia el complemento original de las formas necesarias.

Código clave en el complemento original No cubriremos la forma en que hacemos nuestra API de apelación en la base de datos de citas, pero es bastante interesante y es un uso manual de wp_remote_get (), así que no dude en descargar el archivo zip que Contiene ambos complementos.
El código importante para nosotros es lo que hacemos una vez que recibimos nuestros datos de API. Viene como una matriz con dos elementos: texto, el texto de la cita; y autor, la persona que dijo la cita. Nuestro código se muestra de la siguiente manera: add_shortcode (‘Extensible_Plogin_Demo’, ‘wpShout_output_extensible_Plogin’); function wpshout_output_extensible_plogin () {ob_start (); // gancho de acción antes de cualquier salida! do_action (‘wpshout_before_get_qod_text’); $ qod_data = wpshout_get_qod_data (); if (is_array ($ qod_data)) {echo ‘ ‘; $ qod_text = $ qod_data [‘text’]; $ qod_author = $ qod_data [‘autor’]; // ¡Filtrar contenido! $ QOD_TEXT = APLICE_FILTERS (‘WPSHOUT_ QOD_TEXT’, $ QOD_TEXT); $ QOD_AUTHOR = APLICE_FILTERS (‘WPSHOUT_QOD_AUTHOR’, $ QOD_AUTHOR); echo $ qod_text; echo ‘
‘; echo $ qod_author; echo ‘
‘; } // gancho de acción después del resto de la salida! do_action (‘wpshout_after_get_qod_text’); return ob_get_clean (); } Las piezas que se enfatizarán aquí (además de lo útil que es el búfer de salida para códigos cortos) son las siguientes cuatro líneas: do_action (‘wpshout_bebore_get_ qod_text’); Esto ejecutará cualquier función que se haya conectado (usando add_action ()) al gancho de acción que wpshout_before_get_text. Todo esto sucede antes de que se imprima el resto del código del complemento. Este gancho de acción es lo que usa la extensión para imprimir la “Cita del día Carl Sagan para [datos]:” por encima de la cita misma.
$ QOD_TEXT = APLICE_FILTERS (‘WPSHOUT_ QOD_TEXT’, $ QOD_TEXT); Esto ejecutará cualquier función que se haya conectado (usando add_filter ()) al gancho de filtro que wpshout_qod_text. Estas son funciones de filtrado, lo que significa que cambia el resultado que es $ QOD_TEXT, que es el contenido de texto de la cita, y luego lo devuelve para su posterior procesamiento. Este gancho de filtro es lo que utiliza la extensión para convertir ciertas palabras de la cita en Carl Saganspeak. Esto ejecutará todas las funciones que se han conectado (usando add_filter ()) al gancho de filtro que wpshout_qod_author. Este gancho de filtro es lo que utiliza la extensión para cortar al autor de la cita original y colocar “Carl Sagan” después de él.
do_action (‘wpshout_after_get_qod_text’); Esto ejecutará todas las funciones que se han conectado (usando add_action ()) al gancho de acción que wpshout_afte_qod_text. Todo esto sucede después de que se imprime el resto del código del complemento. Este gancho de acción es lo que utiliza la extensión para mostrar la tabla de “mentalidad soplada” bajo la cita.

Para resumir: el complemento solo puede eliminar su propia información, pero sale del camino: usando Apply_Filters () y do_action () para crear ganchos en lugares clave en el código. Sus ganchos de acción permiten a otros programadores agregar o modificar lo que quieran, y sus ganchos de filtro permiten a otros programadores modificar ciertas partes del contenido clave.
Código de clave de extensión La extensión está compuesta por nada más que acciones y filtros, cambios en el complemento original que aprovechan el hecho de que el complemento hace espacio para estos cambios. Aquí está el código de extensión: add_filter (‘wpshout_ qod_text’, ‘wpshout_filter_ qod_text’); // Filtro: palabras de reemplazo específicas en el texto de cita con la función Carl Saganspeak wpshout_filter_qod_text ($ text) {$ text = str_replace (‘i’, ‘me’, ‘the’, ‘is’, ‘am’, ‘ha’), Array (‘i, un descendiente de los homínidos de Savannah que de alguna manera evolución de la capacidad de autorreflexión’, ‘la materia estelar coled y me llama “yo”,’ el triLoss de los átomos que up the ‘,’ parece, Sin la perspectiva alucinante de la física cuántica, ser ‘,’ no puede, debido al principio de inutilización de Heisenberg, se determina que no ser ‘,’ parecen a nuestro mejor científico ‘), $ texto); devolver $ texto; } // filtrar: strikethrough antiguo autor y agregue “carl sagan” después de add_filter (‘wpshout_qod_author’, ‘wpshout_filte_qod_author’); Función wpshout_filte_qod_author ($ text) {$ text = ”. $ texto. ‘ Carl Sagan’; devolver $ texto; } // Acción: Agregue el título antes de la cita add_action (‘wpshout_before_get_ qod_text’, ‘wpshout_set_up_quote’); Function wpshout_set_up_quote () {echo ‘
carl sagan cita del día para’. Datos (‘F J, Y’). ‘:
‘; } // Acción: Agregar imagen “Mind Blown” add_action (‘wpshout_afte_qod_text’, ‘wpshout_add_carl_boom’);
homefinance blog