Osadź
Jak to skonfigurować
- W panelu wp-admin swojej witryny przejdź do sekcji Baza Booking Calendar – Ustawienia – Osadzanie, zaznacz opcję „Zezwól na osadzanie na innych stronach” i zapisz zmiany.
- Na tym samym ekranie wpisz w polu „Witryny, które mogą osadzać kalendarz” adresy witryn, które mogą go osadzać – po jednym w każdym wierszu, podając wyłącznie adres hosta:
example.comPozostaw to pole puste, a każda witryna będzie mogła osadzić kalendarz – co oznacza również, że każda witryna będzie mogła umieścić go pod własną treścią. - Wybierz, co chcesz osadzić na tym samym ekranie, i skopiuj wygenerowany automatycznie fragment kodu. Możesz też skorzystać z jednego z poniższych przykładów – są one identyczne i już wypełnione.
- Wklej to na tej drugiej stronie w dowolnym miejscu, gdzie ma się znaleźć kalendarz. Nie trzeba tam niczego instalować: ani wtyczki, ani WordPressa, ani zakładać konta.
Przykłady
Cały kalendarz wraz z selektorem usług
<script src="https://bazadevelopers.com/bbc-embed.js"></script>Nie trzeba nic więcej. To ten sam kalendarz, który wyświetla się na Twoich stronach, z tymi samymi usługami, cenami i zasadami.
Jedna usługa jako taka
<script src="https://bazadevelopers.com/bbc-embed.js" data-service="12"></script>Identyfikator usługi, zgodnie z powyższą listą usług. Selektor nie jest wyświetlany, a klient rezerwuje tę jedną usługę.
Przycisk logowania w nagłówku strony
<script src="https://bazadevelopers.com/bbc-embed.js" data-type="auth" data-account-url="/account/" data-login-text="Log in" data-account-text="My account"></script>Jest wyświetlane jako element znacznikowy, a nie jako ramka, więc jego menu otwiera się nad stroną. Atrybut `data-account-url` odnosi się do strony w ICH serwisie, na której znajduje się konto – wszystkie linki w menu prowadzą właśnie tam, więc nikt nie jest przekierowywany do Twojej strony.
Konto klienta – na osobnej stronie
<script src="https://bazadevelopers.com/bbc-embed.js" data-type="account" data-account-url="/account/"></script>Umieść to na stronie, której nazwę podałeś w atrybucie `data-account-url`. Rezerwacje, saldo, program lojalnościowy i profil – wszystko to. Logowanie i wylogowywanie odbywa się na tej stronie i użytkownik nigdy jej nie opuszcza.
Gdzie trafia klient po dokonaniu płatności
<script src="https://bazadevelopers.com/bbc-embed.js" data-return-url="/thank-you/" data-cancel-url="/booking/"></script>Zapisano w kalendarzu. Oba adresy muszą znajdować się na jednej z wymienionych powyżej stron – płatność nigdy nie jest wysyłana z powrotem na adres, za który nikt nie poręczył.
Paragon, na stronie, na którą trafiają
<script src="https://bazadevelopers.com/bbc-embed.js" data-type="payment" data-home-url="/"></script>Umieść to na stronie o nazwie podanej w atrybucie `data-return-url`. Wyświetla to dane zamówienia, daty oraz kwotę zapłaty – bramka płatnicza dodaje numer rezerwacji do adresu, a ten element go odczytuje. Atrybut `data-home-url` określa stronę docelową przycisku na ich witrynie.
Ile miejsca to zajmuje
<script src="https://bazadevelopers.com/bbc-embed.js" data-width="100%" data-max-width="1200px"></script>Liczba oznacza liczbę pikseli; pozostałe wartości są traktowane zgodnie z zapisem. Jeśli nie podano tej liczby, element zajmuje tyle miejsca, ile mu przyznaje strona.
Inny wygląd niż na twoich stronach
<script src="https://bazadevelopers.com/bbc-embed.js" data-theme="dark" data-view="month" data-whole-day="yes"></script>Motyw, widok i rezerwacja na cały dzień dotyczą wyłącznie tego osadzonego elementu. Jeśli opcje te zostaną pominięte, każda z nich będzie zgodna z Twoimi ustawieniami projektu.
Gdy narzędzie do tworzenia stron nie zachowuje tagu skryptu
<div data-bbc-embed data-service="12"></div> <script src="https://bazadevelopers.com/bbc-embed.js"></script>Pusty element o tych samych atrybutach działa tak samo, niezależnie od tego, gdzie się znajduje. Wystarczy umieścić skrypt raz w dowolnym miejscu na stronie.
Buforowanie
Jeśli Twoja strona korzysta z wtyczki do buforowania stron (LiteSpeed Cache, WP Rocket, W3 Total Cache, WP Super Cache i inne), należy skonfigurować trzy ustawienia, w przeciwnym razie formularz rezerwacyjny będzie działał nieprawidłowo, co może sprawiać wrażenie, jakby zawierał błędy:
- Nie należy wyświetlać stron z pamięci podręcznej użytkownikom zalogowanym. Strona przeznaczona dla gości zawiera tokeny bezpieczeństwa gości, a każdy z nich jest odrzucany, gdy osoba zalogowana korzysta z tej strony.
- Nie pozwól, aby optymalizator JavaScriptu łączył lub przenosił skrypty wbudowane tej wtyczki. Znajdują się tam jej ustawienia i tokeny, a połączony plik to jeden plik dla wszystkich – co oznacza, że token jednego użytkownika jest przekazywany wszystkim pozostałym.
- Czas życia strony nie powinien przekraczać dwunastu godzin lub należy wykluczyć strony zawierające formularz rezerwacyjny. Token bezpieczeństwa zachowuje ważność mniej więcej przez ten czas, a strona starsza niż jej własny token powoduje odrzucenie rezerwacji.
Po wprowadzeniu jakichkolwiek zmian należy raz wyczyścić pamięć podręczną. Wtyczka żąda nowego tokenu i ponawia próbę, gdy napotka nieaktualny token, więc zwykły użytkownik nie napotka przy tym żadnych przeszkód – jednak strony wygenerowanej dla niewłaściwej osoby nie da się naprawić z poziomu przeglądarki.
Typowe problemy
- Nie wyświetla się absolutnie nic: powyższa opcja jest wyłączona albo licencja nie zezwala na osadzanie treści. Gdy jest wyłączona, ta strona celowo nie udostępnia żadnych treści.
- Kalendarz wyświetla się, ale każdy dzień jest nieaktywny: strona, na której się znajduje, nie figuruje na powyższej liście. Odpowiedź na zapytanie dotyczące strony nieujętej na liście jest udzielana bez uprawnienia do odczytania odpowiedzi, a przeglądarka ją odrzuca.
- Logowanie nie jest utrzymywane: obie witryny muszą korzystać z protokołu HTTPS. Przeglądarka nie zachowuje sesji jednej witryny, gdy użytkownik znajduje się na innej, chyba że obie witryny są zabezpieczone.
- Menu konta prowadzi do tej strony: brakuje atrybutu „data-account-url”. Bez niego system nie wie, gdzie znajduje się strona danego konta, więc linki pozostają takie, jak zostały tutaj zapisane.
- Dwa kalendarze na jednej stronie: na stronie można wyświetlić tylko jeden – jego ustawienia są zmiennymi wspólnymi dla całej strony. Aby umieścić drugi kalendarz w osobnej ramce, dodaj do niego atrybut data-frame="yes".
- Strona z potwierdzeniem jest pusta: drukuje się dopiero wtedy, gdy bramka przekieruje klienta z powrotem na tę stronę, ponieważ numer rezerwacji pojawia się w adresie. Ręczne otwarcie tej strony nie wyświetla żadnych treści, co jest zgodne z oczekiwaniami.
