Post Top Ad

Your Ad Spot

domingo, 13 de septiembre de 2020

Llamada Ajax desde complementos y módulos en Joomla

Introducción

Ajax permite crear sitios web dinámicos y rápidos.
Podemos usar Ajax para actualizar una sección específica de una página sin recargar todo el contenido o para validar un solo elemento sin enviar el formulario completo.
Mientras desarrollamos una extensión para Joomla, podemos encontrarnos con una tarea que requiera una llamada jQuery Ajax, puede ser para el contenido que cambia dinámicamente de un elemento o para obtener datos basados ​​en la entrada del usuario o para realizar alguna operación en segundo plano.
Si estamos desarrollando un componente, entonces no tenemos ningún problema, ya que podemos hacer una solicitud Ajax a cualquier controlador del componente, pero ¿y si necesitamos crear solo un complemento o módulo, podríamos quedarnos aquí?
Como en la versión anterior de Joomla, necesitamos crear nuestro propio componente si necesitamos una llamada Ajax pero Joomla! 3.2 incluye una interfaz AJAX.
Básicamente, com_ajax es un componente que sirve como interfaz para llamadas Ajax para complementos y módulos independientes.

Algunos casos de uso

  • Primero, un módulo / complemento que recupera datos de una API externa
  • En segundo lugar, un módulo / complemento que interactúa con un componente que no desarrolló
  • En tercer lugar, un módulo / complemento que requiere datos usando Ajax, podemos escribir el método ajax en el mismo módulo / complemento

¿Cómo funciona Ajax Call para módulos y complementos?

En primer lugar, al realizar una llamada Ajax desde el módulo / complemento, la URL debe ser index.php? Option = com_ajax.
Otros parámetros:
Requerido -
opción = com_ajax
[módulo | complemento] = nombre
formato = [json | debug | raw]
Opcional -
method = [nombre del método] los valores predeterminados se obtienen si no se proporcionan.
Una solicitud a? Option = com_ajax & module = search llamaría a mod_search con resultados devueltos en el formato predeterminado. Del mismo modo,? Option = com_ajax & plugin = search & format = json activaría onAjaxSearch con resultados devueltos en JSON.

com_ajax para módulos

Para usar la llamada Ajax en módulos, algunos requisitos son:
  1. Un método debe estar definido en helper.php
  2. La solicitud debe incluir una variable de módulo en la URL. Ejemplo: módulo = buscar mod_search
  3. Opcionalmente, la variable de método se puede usar en la URL para reemplazar el método de obtención predeterminado. Ejemplo: método = myFunction esto activará myFunctionAjax
Solicitud de ejemplo

El código anterior activará el método getDataAjax en helper.php del módulo de búsqueda.

com_ajax para complementos

Para usar la llamada Ajax en complementos, algunos requisitos son:
  1. El nombre del método debe comenzar con onAjax. Ejemplo: onAjax [Nombre]
  2. La solicitud debe incluir una variable de complemento en la URL. Ejemplo: plugin = getData esto activará onAjaxgetData
  3. Opcionalmente, la variable de grupo se puede usar en la URL para especificar el grupo de complementos.
Solicitud de ejemplo

El código anterior activará el método onAjaxConnectWksocialTwitterProfile en el archivo del complemento.

No hay comentarios.:

Publicar un comentario

Dejanos tu comentario para seguir mejorando!

outbrain

Páginas