Asyntai AI -chatbotin lisääminen MedusaCMS:ään
Vaiheittainen ohje Medusa-verkkokauppoihin
Tärkeää: Medusa on headless-verkkokauppa-alusta. Chatbot-koodi tulee lisätä verkkokauppasovellukseesi, ei Medusa-palvelimeen tai hallintapaneeliin.
Vaihe 1: Hanki upotuskoodisi
Siirry ensin Asyntai-hallintapaneeliin ja vieritä alas "Upotuskoodi"-osioon. Kopioi yksilöllinen upotuskoodisi, joka näyttää tältä:
<script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script>
Huomautus: Yllä oleva koodi on vain esimerkki. Sinun on kopioitava oma yksilöllinen upotuskoodisi Hallintapaneelistasi, sillä se sisältää henkilökohtaisen widget-tunnuksesi.
Vaihe 2: Lisää Next.js-verkkokauppaan (yleisin)
Medusan oletusverkkokaupan aloituspohja käyttää Next.js:ää. Lisää chatbot verkkokauppasi juurilayoutiin:
App Router (Next.js 13+)
Avaa app/layout.tsx verkkokauppaprojektissasi ja lisää Script-komponentti:
import Script from 'next/script'
export default function RootLayout({ children }) {
return (
<html lang="en">
<body>
{children}
<Script
src="https://asyntai.com/static/js/chat-widget.js"
data-asyntai-id="YOUR_WIDGET_ID"
strategy="afterInteractive"
/>
</body>
</html>
)
}
Pages Router
Jos verkkokauppasi käyttää Pages Routeria, avaa pages/_document.tsx tai pages/_app.tsx:
// pages/_app.tsx
import Script from 'next/script'
export default function MyApp({ Component, pageProps }) {
return (
<>
<Component {...pageProps} />
<Script
src="https://asyntai.com/static/js/chat-widget.js"
data-asyntai-id="YOUR_WIDGET_ID"
strategy="afterInteractive"
/>
</>
)
}
Vinkki: Asetus strategy="afterInteractive" varmistaa, että chatbot latautuu sivun tultua interaktiiviseksi, mikä tarjoaa parhaan käyttökokemuksen vaikuttamatta sivun lataussuorituskykyyn.
Vaihtoehtoinen menetelmä 1: Gatsby-verkkokauppa
Jos Medusa-verkkokauppasi käyttää Gatsbya, lisää skripti tiedoston gatsby-ssr.js kautta käyttämällä funktioita onRenderBody ja setPostBodyComponents:
// gatsby-ssr.js
import React from 'react'
export const onRenderBody = ({ setPostBodyComponents }) => {
setPostBodyComponents([
<script
key="asyntai"
async
src="https://asyntai.com/static/js/chat-widget.js"
data-asyntai-id="YOUR_WIDGET_ID"
/>
]);
};
Huomautus: Lisää sama koodi myös tiedostoon gatsby-browser.js, jos haluat widgetin säilyvän asiakaspuolen navigoinnin aikana. Vaihtoehtoisesti voit lisätä sen juurilayout-komponenttiisi.
Vaihtoehtoinen menetelmä 2: Mukautettu React-verkkokauppa
Jos Medusa-verkkokauppasi käyttää mukautettua React-asennusta (Vite, Create React App jne.):
Lisää skripti tiedostoon public/index.html juuri ennen sulkevaa </body>-tagia:
<!DOCTYPE html>
<html lang="en">
<head>
<!-- ... existing head content ... -->
</head>
<body>
<div id="root"></div>
<script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script>
</body>
</html>
Tai käytä useEffect-hookia juurikomponentissasi:
// App.tsx or App.jsx
import { useEffect } from 'react';
function App() {
useEffect(() => {
const script = document.createElement('script');
script.src = 'https://asyntai.com/static/js/chat-widget.js';
script.setAttribute('data-asyntai-id', 'YOUR_WIDGET_ID');
script.async = true;
document.body.appendChild(script);
return () => {
document.body.removeChild(script);
};
}, []);
return (
// ... your app content
);
}
Vaihtoehtoinen menetelmä 3: Mikä tahansa mukautettu frontend
Jos Medusa-pohjainen kauppasi käyttää muuta HTML-pohjaista frontendia, lisää tavallinen script-tagi juuri ennen sulkevaa </body>-tagia:
<script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script>
</body>
</html>
Vinkki: Tämä menetelmä toimii minkä tahansa frontend-kehyksen tai staattisen sivugeneraattorin kanssa, joka tuottaa HTML:ää, mukaan lukien Vue, Svelte, Angular, Astro ja muut Medusa-backendiin yhdistetyt ratkaisut.
Vaihe 3: Julkaise ja vahvista
Kun olet lisännyt koodin verkkokauppasovellukseesi:
- Julkaise verkkokauppasi hosting-palveluntarjoajallesi (Vercel, Netlify, Railway jne.)
- Avaa live-verkkokauppasi uudessa selaimen välilehdessä
- Chat-widget-painikkeen pitäisi näkyä oikeassa alakulmassa
- Napsauta sitä varmistaaksesi, että se avautuu ja toimii oikein
Etkö näe widgetiä? Varmista, että olet korvannut YOUR_WIDGET_ID todellisella widget-tunnuksellasi hallintapaneelista. Tarkista, että skripti latautuu selaimen Network-välilehdessä (F12 > Network). Varmista, että verkkokauppa on julkaistu uudelleen koodin lisäämisen jälkeen. Next.js:ssä varmista, että käytät Script-komponenttia paketista next/script, et tavallista <script>-tagia. Muista, että koodi lisätään verkkokauppaan, ei Medusa-palvelimelle. Tyhjennä selaimen välimuisti tai testaa incognito-tilassa.
Weebly