איך להוסיף צ'אטבוט AI של Asyntai ל-DatoCMS
מדריך צעד אחר צעד לאתרים מבוססי DatoCMS
מערכת ניהול תוכן ללא ממשק (Headless CMS): DatoCMS היא מערכת ניהול תוכן ללא ממשק (headless CMS) שמספקת תוכן דרך ממשקי API. יש להוסיף את קוד הצ'אטבוט לאפליקציית הקצה שלך (Next.js, Gatsby, Nuxt וכו'), ולא ללוח הבקרה של DatoCMS.
שלב 1: קבל את קוד ההטמעה שלך
ראשית, עבור ללוח הבקרה של Asyntai וגלול למטה לחלק "קוד הטמעה". העתק את קוד ההטמעה הייחודי שלך שייראה כך:
<script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script>
הערה: הקוד למעלה הוא רק דוגמה. עליך להעתיק את קוד ההטמעה הייחודי שלך מלוח הבקרה שלך כיוון שהוא מכיל את מזהה הווידג'ט האישי שלך.
שלב 2: הוספה לממשק Next.js (הנפוץ ביותר)
Next.js היא מסגרת העבודה הקדמית הפופולרית ביותר שמשמשת עם DatoCMS. הוסף את הצ'אטבוט באמצעות רכיב Script:
App Router (app/layout.tsx):
- פתח את קובץ הפריסה הראשי שלך:
app/layout.tsx - ייבא את רכיב Script והוסף את הצ'אטבוט:
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>
)
} - החלף את
YOUR_WIDGET_IDבמזהה הווידג'ט האמיתי שלך - שמור את הקובץ והפעל מחדש את שרת הפיתוח שלך
Pages Router (pages/_app.tsx):
- פתח את קובץ
pages/_app.tsxשלך - הוסף את רכיב 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"
/>
</>
)
}
טיפ: שימוש ב-strategy="afterInteractive" מבטיח שהצ'אטבוט נטען מיד לאחר שהעמוד הופך לאינטראקטיבי, ומספק איזון טוב בין ביצועים לזמינות.
שיטה חלופית 1: ממשק Gatsby
לאתרי Gatsby ששואבים תוכן מ-DatoCMS דרך gatsby-source-datocms:
- צור או ערוך את
gatsby-ssr.jsבתיקיית השורש של הפרויקט שלך: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"
/>
])
} - החלף את
YOUR_WIDGET_IDבמזהה הווידג'ט האמיתי שלך - הפעל מחדש את שרת הפיתוח של Gatsby
שיטה חלופית 2: ממשק Nuxt.js
לאפליקציות Nuxt.js שצורכות תוכן DatoCMS:
- הוסף ל-
nuxt.config.tsשלך:export default defineNuxtConfig({
app: {
head: {
script: [
{
src: 'https://asyntai.com/static/js/chat-widget.js',
async: true,
'data-asyntai-id': 'YOUR_WIDGET_ID'
}
]
}
}
}) - החלף את
YOUR_WIDGET_IDבמזהה הווידג'ט האמיתי שלך - הפעל מחדש את שרת הפיתוח של Nuxt
שיטה חלופית 3: HTML רגיל / אתר סטטי
אם אתה משתמש ב-Content Delivery API של DatoCMS עם אתר HTML סטטי או מחולל אתרים סטטיים:
- הוסף את קוד ההטמעה לקובץ HTML שלך לפני תגית הסגירה
</body>:<script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script> - החלף את
YOUR_WIDGET_IDבמזהה הווידג'ט האמיתי שלך - שמור את הקובץ והעלה לאחסון שלך
שיטה חלופית 4: React (Vite/CRA)
לאפליקציות React סטנדרטיות (Create React App, Vite) שצורכות DatoCMS API:
אפשרות A: הוספה ל-public/index.html
- פתח את קובץ
public/index.htmlשלך (CRA) אוindex.html(Vite) - הוסף את קוד ההטמעה לפני תגית הסגירה
</body>:<script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script> - שמור את הקובץ
אפשרות B: useEffect ברכיב השורש
- צור רכיב צ'אטבוט או הוסף לרכיב השורש שלך:
// 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
} - ייבא והצג את הרכיב ב-
App.jsxאו בפריסת השורש שלך
שלב 3: פריסה ואימות
לאחר הוספת קוד הצ'אטבוט לאתר מבוסס DatoCMS שלך, פרוס או הפעל את שרת הפיתוח שלך. בקר באתר שלך בכרטיסיית דפדפן חדשה או בחלון גלישה פרטית. אתה אמור לראות את כפתור הצ'אט בפינה הימנית התחתונה. לחץ עליו כדי לוודא שהוא נפתח ופועל כראוי.
לא רואה את הווידג'ט? ודא שהוספת את הסקריפט לקובץ הנכון עבור מסגרת העבודה שלך. בדוק במסוף המפתחים של הדפדפן אם יש שגיאות. אם אתה משתמש ברינדור צד שרת, ודא שהסקריפט רץ בצד הלקוח. נסה לנקות את מטמון הדפדפן או לצפות בחלון גלישה פרטית.
משתני סביבה: לאבטחה וגמישות טובות יותר, שקול לאחסן את מזהה הווידג'ט שלך במשתנה סביבה (למשל, NEXT_PUBLIC_ASYNTAI_ID עבור Next.js או VITE_ASYNTAI_ID עבור Vite) במקום לכתוב אותו ישירות בקוד.
Weebly