Gancho y filtro en wordpress
Contents
Esta es una función de traducción. Si los ajustes se hacen bien, traducirá el primer parámetro de una lista de cadenas pretraducidas. Si una instalación tiene un archivo con una traducción compilada para que esta función la use, la usará. Por supuesto, el plugin tiene que empaquetar su propia traducción, de ahí el segundo parámetro. simplr-reg le dice a __() que la traducción de la cadena ‘Please fill out this form to sign up for this site’ debe estar en el archivo de traducción asociado a ‘simplr-reg’ (esto se hace antes en el plugin mediante la función load_plugin_textdomain()).
La función devuelve entonces la traducción. Si no hay traducción que devolver (por ejemplo, el idioma actual no tiene una traducción compilada, la cadena no tiene una traducción compilada para ese paquete, etc.), se devuelve la entrada original.
Esta función permite filtrar los valores utilizados por el plugin según sea necesario. Este es uno de los principales conceptos que hay que entender como desarrollador de plugins. WordPress se extiende a través de ganchos, que son básicamente puntos de acceso que le permiten cronometrar la ejecución de las acciones de su plugin y/o manipular información/datos que WordPress utiliza, etc.
Ejemplo de filtro de WordPress
En este post aprenderás a aprovechar los ganchos de filtro en tus temas hijos de WordPress. Los ganchos de filtro son un arma esencial en su arsenal de temas de WordPress. Con ellos tendrá un control casi completo sobre el HTML creado por su Tema WordPress-sin tocar ningún archivo de plantilla.
Filtrar una función es en realidad bastante fácil – una vez que sabe cómo funcionan los filtros de WordPress. Pero si va a filtrar algo en las funciones de su Tema Hijo va a tener que ensuciarse las manos con un poco de PHP. Por suerte, es algo bastante fácil.
Si acabas de empezar a trastear con PHP quiero que recuerdes este consejo crucial: el archivo de funciones debe empezar y terminar con las etiquetas PHP de apertura y cierre. Sin líneas adicionales antes o después. Algo así:
¿Has visto la última línea de la función super_stuff? echo significa esencialmente «ponlo en la pantalla» pero la parte realmente importante aquí es apply_filters. Ahí es donde obtenemos nuestro filter_name, el filtro que estamos, bueno, filtrando. Cualquier función que use apply_filters, ya sea en el código de WordPress o en el código de su Tema Padre, se dejará filtrar por otra función en un plugin o, más importante para nosotros aquí, un Tema Hijo de WordPress.
WordPress add_filter múltiples argumentos
Cuando estaba aprendiendo a usar los hooks en WordPress y el tema Customizr, me cansé de buscar artículos que explicaran las acciones, los filtros y los hooks, en términos sencillos. La mayoría de los artículos son complejos, están escritos para desarrolladores y comienzan así:
Las acciones y los filtros te permiten añadir tu propia funcionalidad o modificar el comportamiento de tu sitio web enganchando una función de devolución de llamada a una etiqueta específica en el código del núcleo, estableciendo prioridades y utilizando parámetros y argumentos pasados a la función de devolución de llamada.
Una página de WordPress se compone de un montón de funciones y consultas a la base de datos, con WordPress y el tema trabajando juntos para producir texto, imágenes, hojas de estilo y otros archivos. El navegador interpreta todo esto y lo pone todo junto en una página web.
Espera, ¿qué? ¿Pensaba que este era un artículo sobre acciones, filtros y ganchos? En vez de eso, ¿estamos hablando de arrogantes mejoradores del hogar? Pues sí. Son formas de entender lo que ocurre cuando se usan acciones y filtros.
Esto le dice a WordPress que cree un hook llamado ‘after_gill_arrives’, que ejecute cualquier acción que esté adjunta a este hook, y que pase los argumentos $gill_has_keys y $gill_has_car a esas acciones (los 2 argumentos que especificamos arriba).
Aplicar matriz de filtros de referencia
echo apply_filters(‘genesis_404_entry_content’, ‘<p>’ . sprintf(__(‘The page you are looking for no longer exists. Perhaps you can return back to the site’s <a href=»%s»>homepage</a> and see if you can find what you are looking for. Or, you can try finding it by using the search form below.’, ‘genesis’), trailingslashit(home_url())) . ‘</p>’);
printf(__(‘The page you are looking for no longer exists. Perhaps you can return back to the site’s <a href=»%s»>homepage</a> and see if you can find what you are looking for. Or, you can try finding it with the information below.’, ‘genesis’), trailingslashit(home_url()));
$paypal[«s2member_log»][] = «Note. This can sometimes happen when/if you are offering an Initial/Trial Period. There are times when a Payment Gateway will NOT supply s2Member with any data immediately after checkout. When/if this happens, s2Member must process the transaction via IPN only (i.e. behind-the-scene), and the Customer must wait for Email Confirmation in these cases.»;