Cara Menambah Chatbot AI Asyntai ke Strapi

Panduan langkah demi langkah untuk laman web berkuasa Strapi

Dapatkan Kod Benam

CMS Tanpa Kepala: Strapi adalah CMS tanpa kepala yang menyediakan kandungan melalui API tetapi tidak menyertakan frontend terbina dalam. Pemasangan chatbot bergantung pada rangka kerja frontend yang anda gunakan untuk memaparkan kandungan Strapi anda. Pilih kaedah di bawah yang sepadan dengan persediaan anda.

Langkah 1: Dapatkan Kod Benam Anda

Pertama, pergi ke Papan Pemuka Asyntai anda dan tatal ke bawah ke bahagian "Kod Benam". Salin kod benam unik anda yang akan kelihatan seperti ini:

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

Nota: Kod di atas hanyalah contoh. Anda mesti menyalin kod benam unik anda sendiri dari Papan Pemuka anda kerana ia mengandungi ID widget peribadi anda.

Kaedah 1: Next.js dengan Strapi (Disyorkan)

Jika anda menggunakan Next.js sebagai frontend Strapi anda (persediaan paling biasa), tambah chatbot menggunakan komponen Script:

  1. Buka fail susun atur utama anda: app/layout.tsx (App Router) atau pages/_app.tsx (Pages Router)
  2. Import komponen Script dan tambah chatbot:
    import Script from 'next/script'

    export default function RootLayout({ children }) {
      return (
        <html>
          <body>
            {children}
            <Script
              src="https://asyntai.com/static/js/chat-widget.js"
              data-asyntai-id="YOUR_WIDGET_ID"
              strategy="lazyOnload"
            />
          </body>
        </html>
      )
    }
  3. Gantikan YOUR_WIDGET_ID dengan ID widget sebenar anda
  4. Simpan fail dan mulakan semula pelayan pembangunan anda

Petua: Menggunakan strategy="lazyOnload" memastikan chatbot dimuatkan selepas halaman sepenuhnya interaktif, memberikan prestasi terbaik untuk laman berkuasa Strapi anda.

Kaedah 2: Gatsby dengan Strapi

Untuk laman Gatsby yang menggunakan gatsby-source-strapi:

  1. Buat atau edit gatsby-ssr.js dalam akar projek anda:
    import React from 'react'

    export const onRenderBody = ({ setPostBodyComponents }) => {
      setPostBodyComponents([
        <script
          key="asyntai-chatbot"
          async
          src="https://asyntai.com/static/js/chat-widget.js"
          data-asyntai-id="YOUR_WIDGET_ID"
        />
      ])
    }
  2. Gantikan YOUR_WIDGET_ID dengan ID widget sebenar anda
  3. Mulakan semula pelayan pembangunan Gatsby anda

Kaedah 3: Nuxt.js dengan Strapi

Untuk aplikasi Nuxt.js yang menggunakan @nuxtjs/strapi:

Nuxt 3:

  1. Tambah ke nuxt.config.ts anda:
    export default defineNuxtConfig({
      app: {
        head: {
          script: [
            {
              src: 'https://asyntai.com/static/js/chat-widget.js',
              async: true,
              'data-asyntai-id': 'YOUR_WIDGET_ID'
            }
          ]
        }
      }
    })

Nuxt 2:

  1. Tambah ke nuxt.config.js anda:
    export default {
      head: {
        script: [
          {
            src: 'https://asyntai.com/static/js/chat-widget.js',
            async: true,
            'data-asyntai-id': 'YOUR_WIDGET_ID'
          }
        ]
      }
    }

Kaedah 4: React dengan Strapi

For standard React apps (Create React App, Vite) consuming Strapi API:

  1. Buka fail public/index.html anda (CRA) atau index.html (Vite)
  2. Tambah kod benam sebelum tag penutup </body>:
    <script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script>
  3. Simpan fail

Atau cipta komponen React:

// components/Chatbot.jsx
import { useEffect } from 'react'

export default function Chatbot() {
  useEffect(() => {
    const script = document.createElement('script')
    script.src = 'https://asyntai.com/static/js/chat-widget.js'
    script.async = true
    script.setAttribute('data-asyntai-id', 'YOUR_WIDGET_ID')
    document.body.appendChild(script)
    return () => document.body.removeChild(script)
  }, [])
  return null
}

Kaedah 5: SvelteKit dengan Strapi

Untuk aplikasi SvelteKit yang menggunakan kandungan Strapi:

  1. Edit fail src/app.html anda
  2. Tambah kod benam sebelum tag penutup </body>:
    <script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script>
  3. Simpan fail

Kaedah 6: Laman Statik dengan API Strapi

If you're using Strapi's REST or GraphQL API with a static HTML site:

  1. Tambah kod benam ke fail HTML anda sebelum tag penutup </body>:
    <script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script>
  2. Simpan fail dan muat naik ke pengehosan anda

Langkah 2: Sahkan Pemasangan

Selepas menambah kod chatbot ke laman berkuasa Strapi anda, deploy atau jalankan pelayan pembangunan anda. Lawati laman web anda dalam tab pelayar baharu atau tetingkap inkognito. Anda sepatutnya melihat butang widget sembang di sudut kanan bawah. Klik padanya untuk memastikan ia dibuka dan berfungsi dengan betul.

Tidak nampak widget? Pastikan anda telah menambah skrip ke fail yang betul untuk rangka kerja anda. Semak konsol pembangun pelayar anda untuk sebarang ralat. Jika menggunakan pemaparan sisi pelayan, pastikan skrip berjalan di sisi klien. Cuba kosongkan cache pelayar anda atau lihat dalam tetingkap inkognito.

Pemboleh Ubah Persekitaran: Untuk keselamatan dan fleksibiliti yang lebih baik, pertimbangkan untuk menyimpan ID widget anda dalam pemboleh ubah persekitaran (contohnya, NEXT_PUBLIC_ASYNTAI_ID untuk Next.js atau VITE_ASYNTAI_ID untuk Vite) dan bukannya mengekodkannya secara tetap.