Űrlapok láncolása: a második űrlap megjelenítése az első után
Hogyan jelenítsd meg egy második űrlapot az első visszaigazolásában, hogyan add át az adatokat, és mi a teendő szöveges visszaigazolás esetén.
A láncolással az első űrlap beküldése után azonnal megjelenhet egy második űrlap: a második shortcode-ját az első visszaigazolásába teszed. Az első űrlap adatait paraméterekkel át is viheted a másodikra.
Alapesetben a második űrlapon csak az Átirányítás és az Oldal típusú visszaigazolás működik megbízhatóan. A Szöveg típusú a második űrlap beküldése után újra az elsőt töltené be. Ha szöveges visszaigazolás kell, lásd az Ajax-os megoldást lent.
Lépések
Szekció neve “Lépések”- Hozd létre az első űrlapot.
- Nyisd meg az első űrlap visszaigazolásait (Beállítások → Megerősítések), és a visszaigazolás szövegébe írd be a második űrlap shortcode-ját:
[gravityform id="123" title="false" description="false" field_values="param_email={:2}" theme="orbital"]A második űrlapnak adj Átirányítás vagy Oldal típusú visszaigazolást.
Az első űrlap stílusa hathat a másodikra, ezért a második shortcode theme attribútumát állítsd az első űrlap témájára.
Mezők előtöltése
Szekció neve “Mezők előtöltése”Az adatok átviteléhez a shortcode-ban field_values attribútum kell. A paraméterek neve egyezzen a második űrlapon megadottakkal. A pontos értékek a második űrlap mezőazonosítóitól függenek, ezért ha még nem tudod, a második űrlap elkészülte után töltsd ki.
- Készíts oldalt az első űrlapnak, és tedd rá az első űrlap shortcode-ját. Az
ajaxattribútumot hagyd el vagy állítsdfalse-ra (ez az oldal az első űrlap kitöltésére való, a fenti visszaigazolási shortcode-tól független):
[gravityform id="123" title="false" description="false" ajax="false" field_values="param_email={:2}" theme="orbital"]- Készítsd el a második űrlapot. Minden mezőnél, amelyet az elsőből kell előtölteni, kapcsold be a Mező dinamikus kitöltésének engedélyezése négyzetet, és adj meg Paraméternév értéket.
- Állítsd be a második űrlap visszaigazolását.
Ezután töltsd ki az első űrlapot: megjelenik a második az előtöltött adatokkal. A második beküldése után a saját visszaigazolása látszik.
Az első űrlap fejlécének eltüntetése
Szekció neve “Az első űrlap fejlécének eltüntetése”A második űrlap beküldése után az első űrlap oldalfejléce még látszhat. Eltüntetéséhez:
- Adj a második űrlaphoz egy HTML mezőt.
- A tartalomba írd be a következő szkriptet. Az oldal összes H1 elemének szövegét törli, a fejléc általában ilyen. Ha a fejlécet más elem adja, igazítsd át.
<script type="text/javascript">document.querySelectorAll("h1").forEach(function(el) { el.textContent = "";});</script>Korlát: beszélgetős űrlap
Szekció neve “Korlát: beszélgetős űrlap”Beszélgetős űrlap visszaigazolásába nem tehető második űrlap. Két kerülőút van:
- Tedd a második űrlapot egy oldalra, és az első visszaigazolásának válaszd ezt az oldalt.
- Kapcsold be a beszélgetős űrlapot a másodikon, és az első átirányítási visszaigazolásába írd be annak a webcímét.
Ajax mint alternatíva
Szekció neve “Ajax mint alternatíva”Ha a második űrlapon szöveges visszaigazolás kell, kapcsold be az Ajax-beküldést az egész oldalon ezzel a kóddal:
add_filter( 'gform_form_args', function( $args ) { $args['submission_method'] = GFFormDisplay::SUBMISSION_METHOD_AJAX; return $args;} );Ezzel a szöveges visszaigazolás is jól jelenik meg a második űrlapon.
Készült: