Jak dodać chatbota Asyntai AI do Bagisto
Przewodnik krok po kroku dla platformy e-commerce Bagisto
Krok 1: Pobierz swój kod osadzania
Najpierw przejdź do swojego Panelu Asyntai i przewiń w dół do sekcji "Kod osadzania". Skopiuj swój unikalny kod osadzania, który będzie wyglądał tak:
<script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script>
Uwaga: Powyższy kod to tylko przykład. Musisz skopiować swój własny unikalny kod osadzania z Panelu, ponieważ zawiera on Twój osobisty identyfikator widgetu.
Krok 2: Dodaj do szablonu układu Blade (zalecane)
Bagisto korzysta z szablonów Laravel Blade. Zalecane podejście to dodanie kodu osadzania bezpośrednio do pliku układu sklepu:
- Otwórz plik układu sklepu:
- Źródło pakietu:
packages/Webkul/Shop/src/Resources/views/layouts/master.blade.php - Opublikowana wersja:
resources/views/vendor/shop/layouts/master.blade.php(jeśli opublikowałeś widoki)
- Źródło pakietu:
- Znajdź zamykający znacznik
</body> - Dodaj kod osadzania tuż przed
</body>, po@stack('scripts'):
@stack('scripts')
<script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script>
</body>
Wskazówka: Jeśli opublikowałeś widoki dostawcy, edytuj opublikowaną wersję w resources/views/vendor/shop/. W przeciwnym razie najpierw je opublikuj za pomocą php artisan vendor:publish --tag=shop-views, aby uniknąć utraty zmian podczas aktualizacji pakietów.
Metoda alternatywna 1: Użycie @push('scripts') w widoku
W dowolnym widoku lub komponencie Blade można użyć stosu skryptów do wstrzyknięcia skryptu chatbota:
@push('scripts')
<script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script>
@endpush
Uwaga: Ta metoda wymaga, aby @stack('scripts') był obecny w głównym pliku układu. Jest on domyślnie zawarty w układzie Bagisto.
Metoda alternatywna 2: Użycie dostawcy usług (Service Provider)
Możesz użyć dostawcy usług, aby programowo udostępnić skrypt we wszystkich widokach. Utwórz własnego dostawcę usług lub użyj AppServiceProvider:
public function boot()
{
view()->composer('shop::layouts.master', function ($view) {
// The script will be available in the layout
});
}
Lub utwórz komponent Blade, który renderuje znacznik script i dołącz go do swojego układu.
Wskazówka: Podejście z dostawcą usług jest przydatne, jeśli chcesz warunkowo ładować chatbota na podstawie wartości konfiguracji lub ustawień środowiska.
Metoda alternatywna 3: Użycie systemu zdarzeń Bagisto
Bagisto emituje zdarzenia widoku w różnych miejscach układu. Możesz nasłuchiwać bagisto.shop.layout.body.after, aby wstrzyknąć skrypt chatbota:
Event::listen('bagisto.shop.layout.body.after', function($viewRenderEventManager) {
$viewRenderEventManager->addTemplate('shop::partials.asyntai-widget');
});
Następnie utwórz częściowy szablon w packages/Webkul/Shop/src/Resources/views/partials/asyntai-widget.blade.php (lub opublikowany odpowiednik) z kodem osadzania:
<script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script>
Uwaga: Podejście z systemem zdarzeń utrzymuje zmiany w sposób modularny i oddzielony od głównych plików układu, co ułatwia zarządzanie podczas aktualizacji Bagisto.
Krok 3: Wyczyść pamięć podręczną i zweryfikuj
Po dodaniu kodu osadzania wyczyść pamięć podręczną aplikacji, aby upewnić się, że zmiany zostaną zastosowane:
php artisan cache:clear && php artisan view:clear
Odwiedź swój sklep Bagisto w nowej karcie przeglądarki lub w oknie incognito. Powinieneś zobaczyć przycisk widgetu czatu w prawym dolnym rogu. Kliknij go, aby upewnić się, że otwiera się i działa prawidłowo.
Nie widzisz widgetu? Upewnij się, że uruchomiłeś zarówno php artisan cache:clear, jak i php artisan view:clear. Spróbuj również wyczyścić pamięć podręczną przeglądarki lub wyświetlić stronę w oknie incognito. Jeśli edytowałeś źródło pakietu bezpośrednio, sprawdź, czy żadne opublikowane widoki nie nadpisują Twoich zmian. Upewnij się, że kod osadzania jest prawidłowo umieszczony przed zamykającym znacznikiem </body>.
Weebly