Volver al panel

Documentación

Aprende a usar Asyntai

Cómo añadir el chatbot de IA Asyntai a CrafterCMS

Guía paso a paso para sitios web de CrafterCMS

Obtener código de inserción

Paso 1: Obtén su código de inserción

Primero, ve a tu Panel de control de Asyntai y desplázate hasta la sección "Código de inserción". Copia tu código de inserción único que se verá así:

<script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script>

Nota: El código anterior es solo un ejemplo. Debe copiar su propio código de inserción único desde su Panel de control ya que contiene su ID de widget personal.

Paso 2: Añadir a la plantilla FreeMarker (Recomendado)

CrafterCMS usa plantillas FreeMarker (.ftl) para renderizar páginas. La forma más fácil de añadir el chatbot a todas las páginas es editando su plantilla de página principal:

  1. En Crafter Studio, ve a Site Dashboard > Content Types o navegue a las plantillas
  2. Abra su plantilla de página principal (por ejemplo, /templates/web/pages/home.ftl o el diseño base)
  3. Encuentra la etiqueta de cierre </body>
  4. Pegue su código de inserción de Asyntai justo antes de la etiqueta </body>:
    <!-- Asyntai AI Chatbot --> <script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script> </body>
  5. Guarde el archivo y publique a través de Crafter Studio

Consejo: Añadir el script antes de la etiqueta de cierre </body> asegura que se cargue después del contenido de la página, lo cual es recomendado para widgets de chat y no ralentizará la carga de su página.

Método alternativo 1: Usando componentes de plantilla de Crafter

Para una mejor organización, cree una plantilla de componente dedicada para el widget del chatbot:

  1. En Crafter Studio, cree un nuevo archivo de plantilla en /templates/web/components/asyntai-widget.ftl
  2. Añada el siguiente contenido a la plantilla del componente:
    <!-- Asyntai AI Chatbot Component --> <script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script>
  3. Inclúyelo en su plantilla de diseño principal usando una directiva de inclusión de FreeMarker:
    <#include "/templates/web/components/asyntai-widget.ftl" />
  4. Alternativamente, si usas el sistema de renderizado de componentes de Crafter, usa:
    <@renderComponent component=contentModel.asyntaiWidget />
  5. Guarde ambos archivos y publique a través de Crafter Studio

Nota: Usar una plantilla de componente separada facilita habilitar o deshabilitar el chatbot en todo su sitio comentando una sola línea de inclusión.

Método alternativo 2: Usando la configuración de Head/Scripts de Crafter

CrafterCMS le permite inyectar scripts de forma global a través de la configuración del sitio:

  1. En Crafter Studio, navegue a Site Config > Configuration
  2. Abra el archivo de Engine Site Configuration (site-config.xml)
  3. Añada una configuración de inyección de script personalizada:
    <site> <!-- Existing configuration... --> <!-- Custom Scripts --> <scripts> <script> <src>https://asyntai.com/static/js/chat-widget.js</src> <async>true</async> <data-asyntai-id>YOUR_WIDGET_ID</data-asyntai-id> </script> </scripts> </site>
  4. Alternativamente, edita su diseño base de FreeMarker para leer desde la configuración del sitio e inyectar scripts de forma dinámica:
    <#if siteConfig.getString("scripts.script.src", "")?has_content> <script async src="${siteConfig.getString("scripts.script.src")}" data-asyntai-id="${siteConfig.getString("scripts.script.data-asyntai-id")}"></script> </#if>
  5. Guarde y publique los cambios de configuración

Consejo: Usar la configuración del sitio le permite gestionar el widget del chatbot sin modificar archivos de plantilla directamente, facilitando su actualización o eliminación posterior.

Método alternativo 3: Usando controlador Groovy

CrafterCMS soporta scripts Groovy para lógica del lado del servidor. Puede usar un controlador para añadir dinámicamente el script del chatbot:

  1. Cree un script Groovy en /scripts/pages/ (por ejemplo, /scripts/pages/home.groovy o su controlador de todo el sitio)
  2. Añada el siguiente código para inyectar la URL del script en el modelo de la plantilla:
    // /scripts/pages/home.groovy import org.craftercms.engine.service.context.SiteContext def siteContext = SiteContext.current // Add Asyntai chatbot configuration to the model model.asyntaiEnabled = true model.asyntaiWidgetId = "YOUR_WIDGET_ID" model.asyntaiScriptSrc = "https://asyntai.com/static/js/chat-widget.js"
  3. Luego referencia las variables del modelo en su plantilla FreeMarker:
    <#if model.asyntaiEnabled?? && model.asyntaiEnabled> <script async src="${model.asyntaiScriptSrc}" data-asyntai-id="${model.asyntaiWidgetId}"></script> </#if>
  4. Guarde tanto el script Groovy como el archivo de plantilla
  5. Publique los cambios a través de Crafter Studio

Nota: El enfoque del controlador Groovy es útil cuando necesita lógica condicional (por ejemplo, habilitar el chatbot solo para ciertos roles de usuario o tipos de página) o cuando deseas obtener valores de configuración de fuentes externas.

Paso 3: Publicar y verificar

Después de realizar tus cambios, publícalos a través de Crafter Studio:

  1. En Crafter Studio, ve a Panel del sitio
  2. Revise sus cambios en la sección My Recent Activity o Pending Approval
  3. Haz clic en Publicar para implementar los cambios en tu sitio en vivo
  4. Visita tu sitio web de CrafterCMS en una nueva pestaña del navegador o ventana de incógnito
  5. Deberías ver el botón del widget de chat en la esquina inferior derecha
  6. Haz clic en él para asegurarte de que se abre y funciona correctamente

¿No ves el widget? Asegúrese de haber publicado los cambios a través de Crafter Studio. Verifique que estés editando el archivo de plantilla correcto que usan sus páginas. Limpie la caché de su navegador o visualiza en una ventana de incógnito. Si usas la caché de Crafter, limpia la caché del Engine desde el panel de Crafter Studio.

Ubicación de la plantilla: Las ubicaciones de plantillas de CrafterCMS pueden variar según la estructura de su proyecto. Las ubicaciones comunes incluyen /templates/web/pages/ para plantillas de página, /templates/web/components/ para plantillas de componentes y /templates/web/ para plantillas de diseño. Revise sus plantillas existentes para encontrar dónde se define la etiqueta </body>.