Cara Menambah Chatbot AI Asyntai ke DatoCMS
Panduan langkah demi langkah untuk laman web berkuasa DatoCMS
CMS Tanpa Kepala: DatoCMS ialah CMS tanpa kepala yang menghantar kandungan melalui API. Kod chatbot perlu ditambah ke aplikasi antara muka hadapan anda (Next.js, Gatsby, Nuxt, dll.), bukan ke papan pemuka DatoCMS.
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.
Langkah 2: Tambah ke Antara Muka Hadapan Next.js (Paling Biasa)
Next.js ialah rangka kerja antara muka hadapan paling popular yang digunakan dengan DatoCMS. Tambah chatbot menggunakan komponen Script:
App Router (app/layout.tsx):
- Buka fail susun atur akar anda:
app/layout.tsx - 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="afterInteractive"
/>
</body>
</html>
)
} - Gantikan
YOUR_WIDGET_IDdengan ID widget sebenar anda - Simpan fail dan mulakan semula pelayan pembangunan anda
Pages Router (pages/_app.tsx):
- Buka fail
pages/_app.tsxanda - Tambah komponen Script:
import Script from 'next/script'
import type { AppProps } from 'next/app'
export default function App({ Component, pageProps }: AppProps) {
return (
<>
<Component {...pageProps} />
<Script
src="https://asyntai.com/static/js/chat-widget.js"
data-asyntai-id="YOUR_WIDGET_ID"
strategy="afterInteractive"
/>
</>
)
}
Petua: Menggunakan strategy="afterInteractive" memastikan chatbot dimuatkan sejurus selepas halaman menjadi interaktif, memberikan keseimbangan yang baik antara prestasi dan ketersediaan.
Kaedah Alternatif 1: Antara Muka Hadapan Gatsby
Untuk laman Gatsby yang menarik kandungan dari DatoCMS melalui gatsby-source-datocms:
- Buat atau edit
gatsby-ssr.jsdalam 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"
/>
])
} - Gantikan
YOUR_WIDGET_IDdengan ID widget sebenar anda - Mulakan semula pelayan pembangunan Gatsby anda
Kaedah Alternatif 2: Antara Muka Hadapan Nuxt.js
Untuk aplikasi Nuxt.js yang menggunakan kandungan DatoCMS:
- Tambah ke
nuxt.config.tsanda:export default defineNuxtConfig({
app: {
head: {
script: [
{
src: 'https://asyntai.com/static/js/chat-widget.js',
async: true,
'data-asyntai-id': 'YOUR_WIDGET_ID'
}
]
}
}
}) - Gantikan
YOUR_WIDGET_IDdengan ID widget sebenar anda - Mulakan semula pelayan pembangunan Nuxt anda
Kaedah Alternatif 3: HTML Biasa / Laman Statik
Jika anda menggunakan Content Delivery API DatoCMS dengan laman HTML statik atau penjana laman statik:
- 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> - Gantikan
YOUR_WIDGET_IDdengan ID widget sebenar anda - Simpan fail dan muat naik ke pengehosan anda
Kaedah Alternatif 4: React (Vite/CRA)
Untuk aplikasi React standard (Create React App, Vite, dll.) menggunakan API DatoCMS:
Pilihan A: Tambah ke public/index.html
- Buka fail
public/index.htmlanda (CRA) atauindex.html(Vite) - 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> - Simpan fail
Pilihan B: useEffect dalam Komponen Akar
- Buat komponen chatbot atau tambah ke komponen akar anda:
// 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
} - Import dan paparkan komponen dalam
App.jsxanda atau susun atur akar
Langkah 3: Laksanakan dan Sahkan
Selepas menambah kod chatbot ke laman berkuasa DatoCMS anda, laksanakan 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 untuk memastikan ia terbuka 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.
Weebly