LARPBuilder Wiki

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revizePředchozí verze
Následující verze
Předchozí verze
cs:api [2025/03/03 11:03] – [Jak vložit formulář do WordPress (nebo jiného CMS)] admincs:api [2025/04/05 13:49] (aktuální) – [Jak vložit formulář do WordPress (nebo jiného CMS)] admin
Řádek 1: Řádek 1:
-====== Úvod ====== +====== API ====== 
-LARP Builder poskytuje REST API, které umožňuje externě spravovat některá data LARP aplikace. Konkrétně endpoint **Players** slouží k práci s hráči – umožňuje získat seznam hráčů, detail konkrétního hráče a přidávat nové hráče do systému. API tak lze využít například pro registrační formulář na vlastních webových stránkách (WordPress, Drupal, statické stránky atd.) nebo pro integraci s jinými nástroji (např. vlastní CRM).+LARP Builder poskytuje endpoint **Players**, který slouží k práci s hráči – umožňuje získat seznam hráčů, detail konkrétního hráče a přidávat nové hráče do systému. API tak lze využít například pro registrační formulář na vlastních webových stránkách (WordPress, Drupal, statické stránky atd.) nebo pro integraci s jinými nástroji.
  
 Pro přístup k API je vyžadována autorizace. Jsou podporovány dva hlavní mechanismy: Pro přístup k API je vyžadována autorizace. Jsou podporovány dva hlavní mechanismy:
Řádek 29: Řádek 29:
     <input type="hidden" id="lang" name="lang" value="cs">      <input type="hidden" id="lang" name="lang" value="cs"> 
     <input type="hidden" id="alerts_enabled" name="alerts_enabled" value="0">     <input type="hidden" id="alerts_enabled" name="alerts_enabled" value="0">
-    <input type="hidden" id="from_submit" name="from_submit" value="1">+    <input type="hidden" id="form_submit" name="form_submit" value="1">
  
     <button type="submit">Odeslat</button>     <button type="submit">Odeslat</button>
Řádek 42: Řádek 42:
   - `api_key` = **API klíč** získaný z LARP Builderu (v nastavení konkrétního projektu).     - `api_key` = **API klíč** získaný z LARP Builderu (v nastavení konkrétního projektu).  
   - V LARP Builderu je nutné **přidat doménu** vašich stránek mezi povolené (např. `mojedomena.cz`), aby server akceptoval požadavky z této domény.   - V LARP Builderu je nutné **přidat doménu** vašich stránek mezi povolené (např. `mojedomena.cz`), aby server akceptoval požadavky z této domény.
 +  - Pokud chcete aby formulář napsal že registrace porběhla úspěšně či neúspěšně nastavte hodnotu "value" u alerts_enabled na 1 (<input type="hidden" id="alerts_enabled" name="alerts_enabled" value="0">)
 +  - Můžete zmenit také jazyk jakým bude formulář odpovídat změněním cs v parametru lang jazyky na výběr jsou cs: čeština, en: angličtina, de: němčina, fr: francouzština, es: španělština
 +  - Parametr form_submit říká zda se má po odeslání do LB API formulář snažit o odeslání také jako by šlo oběžný formulář na stránkách (vhodné třeba pro další zpracování formulářových dat do vlastní databáze)
  
 **Jak to funguje:**   **Jak to funguje:**  
   - JavaScript v `apiControl.js` zachytí odeslání formuláře, sebere všechny údaje (včetně `api_key`) a pošle je metodou **POST** na `https://larpbuilder.cz/api/players/`.     - JavaScript v `apiControl.js` zachytí odeslání formuláře, sebere všechny údaje (včetně `api_key`) a pošle je metodou **POST** na `https://larpbuilder.cz/api/players/`.  
   - Server zkontroluje, zda doména (Origin) je povolená a API klíč je platný. Pokud ano, vytvoří nového hráče a vrátí JSON s výsledkem.     - Server zkontroluje, zda doména (Origin) je povolená a API klíč je platný. Pokud ano, vytvoří nového hráče a vrátí JSON s výsledkem.  
 +
 +====== Generování embed kódu formuláře vytvořeného v LARPBuilderu ======
 +V sekci **Seznam formulářů** je u již vytvořených formulářů k dispozici akce **Zobrazit HTML kód**, která automaticky generuje kompletní embed kód formuláře na základě uložených dat. Tento kód obsahuje kompletní HTML dokument s inline styly, speciálními typy polí jako je **scale** (bodovací škála), **paragraph** (odstavec) či **button** (tlačítko) a skrytými poli s aktuálním API klíčem který je uložitelný jako samostatná .html stránka nebo vložitelný například do Wordpressu bez nutnosti se více starat o HTML kód.
 +
 +=== Výhody ===
 +  - **Samostatnost:** Embed kód je kompletní a nevyžaduje žádné další nastavení a skripty (kromě minimálně potřebných skriptů jquery a apiControl.js).
 +  - **Aktualizace:** Možnost dynamického doplnění selectů z databáze zajistí, že na webu bude vždy aktuální výběr.
 +  - **Kompatibilita:** Kód je vhodný pro různé CMS, například pro WordPress, kde jej lze vložit pomocí HTML bloku nebo shortcodu.
 +  - **Jednoduchost:** Stačí zkopírovat vygenerovaný kód a vložit jej na webovou stránku.
  
 ====== Jak vložit formulář do WordPress (nebo jiného CMS) ====== ====== Jak vložit formulář do WordPress (nebo jiného CMS) ======
-Pokud chcete formulář umístit například na WordPress webpostupujte následovně:+Pokud chcete snadno vložit vygenerovaný HTML kód formuláře do WordPressustačí postupovat následovně:
  
-**1) Získání API klíče v LARP Builderu**   +**Zkopírujte embed kód:**  Použijte postup tak jak je napsán o odstavec výše (tento kód obsahuje všechny potřebné části a je ipravený ke kopírování)nebo si vytvořte vlastní formulář a připojte k němu nutná pole potřebné javaskripty
-    1. V administraci LARP Builderu otevřete daný projekt.   +
-    2. Přejděte do sekce //Nastavení projektu//  +
-    3. Najděte **API klíč** (obvykle dolní části nastavení) zkopírujte jej.   +
-    4. Zároveň v této sekci idejte //doménu//ze které budete formulář volat (např. `moje-stranka.cz`), uložte změny.+
  
-**2) Vložení HTML formuláře do WordPressu**   +**Vložte kód do příspěvku:**  Ve WordPressu přejděte na tvorbu nebo úpravu příspěvkuV editoru (Gutenbergpřidejte blok „Vlastní HTML“ do něj vložte zkopírovaný embed kód. Pokud používáte klasický editor, přepněte na záložku HTML a vložte kód přímo tam.
-    - **Možnost A – úprava šablony**: Otevřete soubor //page.php// (nebo jiný .php soubor vaší šablony) a na vhodné místo vložte výše uvedený kód formulářeZměňte `value="VAŠ_API_KLÍČ"` na váš skutečný klíč.   +
-    - **Možnost B – použití pluginu** (doporučenopokud nechcete zasahovat do šablony):   +
-      1. Nainstalujte a aktivujte plugin, který umožňuje vkládat vlastní HTML/JS. Například:   +
-         - [[https://cs.wordpress.org/plugins/insert-headers-and-footers/|Insert Headers and Footers]]   +
-         - [[https://cs.wordpress.org/plugins/code-snippets/|Code Snippets]]   +
-      2. V administraci WP ejděte do //Nastavení → Insert Headers and Footers// (nebo do rozhraní Code Snippets) do sekce, kde lze vkládat kód, vložte HTML formulář (u Code Snippets zvolte typ „HTML Snippet“ či „Shortcode“).   +
-      3. Upravte `value="VAŠ_API_KLÍČ"` na reálnou hodnotu.   +
-      4. Uložte. Na stránce se pak objeví formulář.+
  
-**3) Načtení skriptů** (`apiControl.js` a jQuery)   +**Uložte a publikujte:** Uložte změny a publikujte příspěvekFormulář by se měl zobrazit přesně takjak byl vygenerován – s vlastními styly a funkcemi pro odeslání dat přes API.
-    - Pokud už WordPress načítá jQuery, můžete link na `jquery-3.7.1.slim.min.js` vynechat.   +
-    - Kód `<script src="https://larpbuilder.cz/api/js/apiControl.js"></script>` vložte do //Insert Headers and Footers// v sekci „Scripts in Footer“ nebo pomocí `wp_enqueue_script()` ve functions.php.   +
-    - Ujistěte seže se skripty načítají //po// načtení formuláře, aby mohl JavaScript reagovat na událost //submit//.+
  
-**4) Otestování**   +** Otestování**Otevřete stránku s formulářem, vyplňte jej a klikněte //Odeslat//. Po úspěchu se v administraci LARP Builderu objeví nový hráč s vyplněnými údaji. Pokud dojde k chybě (např. špatná doména, chybějící povinné pole), zobrazí se chybová hláška (v případě že je <input type="hidden" id="alerts_enabled" name="alerts_enabled" value="1"> jinak se chybové hlášení nezobrazí). 
-    - Otevřete stránku s formulářem, vyplňte pole a klikněte //Odeslat//  + 
-    - Po úspěchu se v administraci LARP Builderu objeví nový hráč s vyplněnými údaji. Pokud dojde k chybě (např. špatná doména, chybějící povinné pole), zobrazí se chybová hláška.+Tento postup nevyžaduje žádné složité nastavení ani zásahy do šablony. Stačí zkopírovat hotový kód a vložit jej na stránku. WordPress se postará o zobrazení kódu bez zásahu do dalších souborů či nastavení.
  
 **Tip:** Pokud se kód HTML a `<script>` v klasickém WordPress editoru //nezobrazí správně// nebo se //zahodí//, použijte místo toho blok //Vlastní HTML// (v novém Gutenberg editoru), případně shortcody v Code Snippets.   **Tip:** Pokud se kód HTML a `<script>` v klasickém WordPress editoru //nezobrazí správně// nebo se //zahodí//, použijte místo toho blok //Vlastní HTML// (v novém Gutenberg editoru), případně shortcody v Code Snippets.  
 +
 +===== Kde získám API klíč =====
 +    - V administraci LARP Builderu otevřete daný projekt.  
 +    - Přejděte do sekce //Nastavení projektu//.  
 +    - Najděte **API klíč** (obvykle v dolní části nastavení) a zkopírujte jej.  
 +    - Zároveň v této sekci přidejte //doménu//, ze které budete formulář volat (např. `moje-stranka.cz`), a uložte změny.
  
 ====== Použití API v Postmanu ====== ====== Použití API v Postmanu ======
cs/api.1740996188.txt.gz · Poslední úprava: 2025/03/03 11:03 autor: admin