Kaip pridėti Asyntai DI pokalbių robotą prie DatoCMS
Žingsnis po žingsnio vadovas DatoCMS valdomoms svetainėms
Beantgalinė TVS: DatoCMS yra beantgalinė TVS, teikianti turinį per API. Pokalbių roboto kodą reikia pridėti prie sąsajos programos (Next.js, Gatsby, Nuxt ir kt.), o ne prie DatoCMS valdymo skydelio.
1 žingsnis: Gaukite savo įterpimo kodą
Pirma, eikite į savo Asyntai valdymo skydelį ir slinkite žemyn iki "Įterpimo kodas" skyriaus. Nukopijuokite savo unikalų įterpimo kodą, kuris atrodys taip:
<script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script>
Pastaba: Aukščiau pateiktas kodas yra tik pavyzdys. Turite nukopijuoti savo unikalų įterpimo kodą iš savo Valdymo skydelio, nes jame yra jūsų asmeninis valdiklio ID.
2 žingsnis: Pridėkite prie Next.js sąsajos (Dažniausias)
Next.js yra populiariausia sąsajos sistema, naudojama su DatoCMS. Pridėkite pokalbių robotą naudodami Script komponentą:
App Router (app/layout.tsx):
- Atidarykite pagrindinį išdėstymo failą:
app/layout.tsx - Importuokite Script komponentą ir pridėkite pokalbių robotą:
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>
)
} - Pakeiskite
YOUR_WIDGET_IDsavo tikruoju valdiklio ID - Išsaugokite failą ir paleiskite kūrimo serverį iš naujo
Pages Router (pages/_app.tsx):
- Atidarykite savo
pages/_app.tsxfailą - Pridėkite Script komponentą:
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"
/>
</>
)
}
Patarimas: Naudojant strategy="afterInteractive" užtikrinama, kad pokalbių robotas krausis iš karto po to, kai puslapis taps interaktyvus, suteikdamas gerą balansą tarp našumo ir prieinamumo.
Alternatyvus metodas 1: Gatsby sąsaja
Gatsby svetainėms, traukiančioms turinį iš DatoCMS per gatsby-source-datocms:
- Sukurkite arba redaguokite
gatsby-ssr.jsprojekto šaknyje: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"
/>
])
} - Pakeiskite
YOUR_WIDGET_IDsavo tikruoju valdiklio ID - Paleiskite Gatsby kūrimo serverį iš naujo
Alternatyvus metodas 2: Nuxt.js sąsaja
Nuxt.js programėlėms, naudojančioms DatoCMS turinį:
- Pridėkite prie savo
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'
}
]
}
}
}) - Pakeiskite
YOUR_WIDGET_IDsavo tikruoju valdiklio ID - Paleiskite Nuxt kūrimo serverį iš naujo
Alternatyvus metodas 3: Paprastas HTML / Statinė svetainė
Jei naudojate DatoCMS Content Delivery API su statine HTML svetaine ar statinių svetainių generatoriumi:
- Pridėkite įterpimo kodą prie savo HTML failo prieš uždaromąjį
</body>žymą:<script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script> - Pakeiskite
YOUR_WIDGET_IDsavo tikruoju valdiklio ID - Išsaugokite failą ir įkelkite į savo prieglobą
Alternatyvus metodas 4: React (Vite/CRA)
Standartinėms React programėlėms (Create React App, Vite), naudojančioms DatoCMS API:
Variantas A: Pridėkite prie public/index.html
- Atidarykite savo
public/index.htmlfailą (CRA) arbaindex.html(Vite) - Pridėkite įterpimo kodą prieš uždaromąjį
</body>žymą:<script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script> - Išsaugokite failą
Variantas B: useEffect pagrindiniame komponente
- Sukurkite pokalbių roboto komponentą arba pridėkite prie savo šakninio komponento:
// 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
} - Importuokite ir atvaizduokite komponentą savo
App.jsxarba pagrindiniame išdėstyme
3 žingsnis: Įdiekite ir patikrinkite
Pridėję pokalbių roboto kodą prie DatoCMS valdomos svetainės, įdiekite arba paleiskite kūrimo serverį. Apsilankykite svetainėje naujame naršyklės skirtuke arba inkognito lange. Turėtumėte matyti pokalbių valdiklio mygtuką apatiniame dešiniajame kampe. Spustelėkite jį, kad įsitikintumėte, jog jis atsidaro ir veikia teisingai.
Nematote valdiklio? Įsitikinkite, kad pridėjote skriptą į tinkamą failą savo sistemai. Patikrinkite naršyklės kūrėjo konsolę dėl klaidų. Jei naudojate serverio pusės atvaizdavimą, įsitikinkite, kad skriptas vykdomas kliento pusėje. Pabandykite išvalyti naršyklės talpyklą arba peržiūrėkite inkognito lange.
Aplinkos kintamieji: Geresniam saugumui ir lankstumui apsvarstykite galimybę saugoti valdiklio ID aplinkos kintamajame (pvz., NEXT_PUBLIC_ASYNTAI_ID Next.js arba VITE_ASYNTAI_ID Vite) vietoj tiesioginio įrašymo kode.
Weebly