Bagisto에 Asyntai AI 챗봇을 추가하는 방법
Bagisto 전자상거래 플랫폼을 위한 단계별 가이드
1단계: 임베드 코드 가져오기
먼저 Asyntai 대시보드로 이동하여 "임베드 코드" 섹션까지 아래로 스크롤하십시오. 다음과 같은 형태의 고유 임베드 코드를 복사하십시오:
<script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script>
참고: 위의 코드는 예시일 뿐입니다. 개인 위젯 ID가 포함된 고유한 임베드 코드를 대시보드에서 복사해야 합니다.
2단계: Blade 레이아웃 템플릿에 추가 (권장)
Bagisto는 Laravel Blade 템플릿을 사용합니다. 권장하는 방법은 삽입 코드를 쇼핑 레이아웃 파일에 직접 추가하는 것입니다:
- 쇼핑 레이아웃 파일을 여세요:
- 패키지 소스:
packages/Webkul/Shop/src/Resources/views/layouts/master.blade.php - 게시된 버전:
resources/views/vendor/shop/layouts/master.blade.php(뷰를 게시한 경우)
- 패키지 소스:
- 닫는
</body>태그를 찾으세요 @stack('scripts')뒤,</body>앞에 삽입 코드를 추가하세요:
@stack('scripts')
<script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script>
</body>
팁: 벤더 뷰를 게시한 경우 resources/views/vendor/shop/에서 게시된 버전을 편집하세요. 그렇지 않으면 패키지 업데이트 시 변경 사항을 잃지 않도록 먼저 php artisan vendor:publish --tag=shop-views로 게시하세요.
대체 방법 1: 뷰에서 @push('scripts') 사용
모든 Blade 뷰 또는 컴포넌트에서 scripts 스택을 사용하여 챗봇 스크립트를 삽입할 수 있습니다:
@push('scripts')
<script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script>
@endpush
참고: 이 방법은 마스터 레이아웃 파일에 @stack('scripts')가 있어야 합니다. Bagisto 레이아웃에는 기본적으로 포함되어 있습니다.
대체 방법 2: Service Provider 사용
Service Provider를 사용하여 프로그래밍 방식으로 모든 뷰에서 스크립트를 사용할 수 있습니다. 커스텀 Service Provider를 만들거나 AppServiceProvider를 사용하세요:
public function boot()
{
view()->composer('shop::layouts.master', function ($view) {
// The script will be available in the layout
});
}
또는 스크립트 태그를 렌더링하는 Blade 컴포넌트를 만들어 레이아웃에 포함시키세요.
팁: Service Provider 방식은 설정 값이나 환경 설정에 따라 조건부로 챗봇을 로드하려는 경우에 유용합니다.
대체 방법 3: Bagisto 이벤트 시스템 사용
Bagisto는 레이아웃의 여러 지점에서 뷰 이벤트를 발생시킵니다. bagisto.shop.layout.body.after를 수신하여 챗봇 스크립트를 삽입할 수 있습니다:
Event::listen('bagisto.shop.layout.body.after', function($viewRenderEventManager) {
$viewRenderEventManager->addTemplate('shop::partials.asyntai-widget');
});
그런 다음 삽입 코드가 포함된 부분 템플릿을 packages/Webkul/Shop/src/Resources/views/partials/asyntai-widget.blade.php(또는 게시된 동등 파일)에 생성하세요:
<script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script>
참고: 이벤트 시스템 방식은 변경 사항을 모듈화하고 핵심 레이아웃 파일과 분리하여 Bagisto 업그레이드 시 관리가 더 쉽습니다.
3단계: 캐시 지우기 및 확인
삽입 코드를 추가한 후, 변경 사항이 적용되도록 애플리케이션 캐시를 지우세요:
php artisan cache:clear && php artisan view:clear
새 브라우저 탭이나 시크릿 창에서 Bagisto 스토어를 방문하세요. 오른쪽 하단에 채팅 위젯 버튼이 표시되어야 합니다. 클릭하여 올바르게 열리고 작동하는지 확인하세요.
위젯이 보이지 않나요? php artisan cache:clear와 php artisan view:clear를 모두 실행했는지 확인하세요. 또한 브라우저 캐시를 지우거나 시크릿 창에서 확인해 보세요. 패키지 소스를 직접 편집한 경우, 게시된 뷰가 변경 사항을 덮어쓰지 않는지 확인하세요. 삽입 코드가 닫는 </body> 태그 앞에 올바르게 배치되었는지 확인하세요.
Weebly