{"id":233421,"date":"2023-02-13T11:15:00","date_gmt":"2023-02-13T08:15:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=233421"},"modified":"2022-11-10T23:36:07","modified_gmt":"2022-11-10T20:36:07","slug":"taeydellinen-opas-kenttien-taeyttaeminen-dynaamisesti-painovoimamuodoissa","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/fi\/taeydellinen-opas-kenttien-taeyttaeminen-dynaamisesti-painovoimamuodoissa\/","title":{"rendered":"T\u00e4ydellinen opas: Kenttien t\u00e4ytt\u00e4minen dynaamisesti painovoimamuodoissa"},"content":{"rendered":"\n<p>Yksinkertaisten tai monimutkaisten muotojen rakentaminen <a href=\"https:\/\/www.gravityforms.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Gravity Formsissa<\/a> on helppoa ja nopeaa. Yksi Gravity Formsin toiminnoista on se, ett\u00e4 voit ehdollisesti esivalita tai t\u00e4ytt\u00e4\u00e4 lomakkeen kentti\u00e4. T\u00e4st\u00e4 on hy\u00f6ty\u00e4, kun sinulla on sama lomake useilla yhteystietosivuilla jokaisessa osastossa ja haluat esivalita vastaavan osaston lomakkeesta. Tai olet upottamassa pyynt\u00f6lomaketta tuote- tai palvelusivuille ja haluat automaattisesti esit\u00e4yt\u00e4 tiedot nykyisest\u00e4 tuotteesta tai palvelusta jokaisessa l\u00e4hetyksess\u00e4.<\/p>\n<p>Voit dynaamisesti esivalita tai esit\u00e4yt\u00e4 kentti\u00e4 useilla tavoilla, ja voit my\u00f6s dynaamisesti korvata mahdollisia vaihtoehtoja avattavassa valikossa, valintanappi- tai valintaruuturyhm\u00e4ss\u00e4. Dynaamisesti t\u00e4ytt\u00e4m\u00e4si kentt\u00e4 voi olla n\u00e4kyv\u00e4 kentt\u00e4, jota k\u00e4ytt\u00e4j\u00e4 voi muokata, tai se voidaan reititt\u00e4\u00e4 piilotettuun kentt\u00e4\u00e4n, jotta lomakel\u00e4hetysten lukija saa t\u00e4rkeit\u00e4 tietoja.<\/p>\n<h2>Nelj\u00e4 tapaa t\u00e4ytt\u00e4\u00e4 kent\u00e4t dynaamisesti<\/h2>\n<p>T\u00e4ss\u00e4 oppaassa tarkastellaan nelj\u00e4\u00e4 tapaa t\u00e4ytt\u00e4\u00e4 kent\u00e4t dynaamisesti Gravity Forms -lomakkeessa. Kolme niist\u00e4 voit tehd\u00e4 koskematta mihink\u00e4\u00e4n koodiin! Mutta jos haluat dynaamisesti muokata mahdollisia valintoja valintanappiryhm\u00e4ss\u00e4 tai valintaruuduissa, sinun on kirjoitettava PHP-koodi. Katsomme kuinka se tehd\u00e4\u00e4n aivan lopussa.<\/p>\n<p>Voit t\u00e4ytt\u00e4\u00e4 kentti\u00e4 dynaamisesti seuraavilla tavoilla:<\/p>\n<ul>\n<li>Lis\u00e4tietojen lis\u00e4\u00e4minen URL-osoitteeseen.<\/li>\n<li>Anna lis\u00e4tietoa Gravity Formsin upotuksen lyhytkoodiin.<\/li>\n<li>Lis\u00e4tietojen m\u00e4\u00e4ritt\u00e4minen Gravity Forms Blockiin (jos k\u00e4yt\u00e4t WordPressi\u00e4 Gutenbergin kanssa).<\/li>\n<li>Suodattimien k\u00e4ytt\u00f6 PHP-koodilla.<\/li>\n<\/ul>\n<p>Mutta ensin meid\u00e4n t\u00e4ytyy k\u00e4yd\u00e4 l\u00e4pi kuinka aktivoida kent\u00e4n dynaaminen populaatio.<\/p>\n<h2>Aktivoidaan kentt\u00e4 dynaamisen populaation sallimiseksi<\/h2>\n<p>Ensimm\u00e4inen vaihe riippumatta siit\u00e4, mit\u00e4 menetelm\u00e4\u00e4 k\u00e4yt\u00e4t kent\u00e4n t\u00e4ytt\u00e4miseen, on aktivoida t\u00e4m\u00e4 itse kent\u00e4ss\u00e4.<\/p>\n<p>Lomakkeen muokkauksessa laajenna kentt\u00e4 ja &quot;Lis\u00e4asetukset&quot;-v\u00e4lilehdelt\u00e4 l\u00f6yd\u00e4t valintaruudun &quot;Salli kent\u00e4n t\u00e4ytt\u00e4minen dynaamisesti&quot;. Valitse t\u00e4m\u00e4 pois, niin n\u00e4kyviin tulee uusi tekstisy\u00f6te, jonka avulla voit m\u00e4\u00e4ritt\u00e4\u00e4 parametrin nimen. T\u00e4m\u00e4 voi olla mit\u00e4 haluat, mutta sen tulee olla ainutlaatuinen ja ilman v\u00e4lily\u00f6ntej\u00e4.<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-153486-61e50e767c316.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-153486-61e50e767c316.png\" alt=\"T\u00e4ydellinen opas: Kenttien t\u00e4ytt\u00e4minen dynaamisesti painovoimamuodoissa\" ><\/a><\/p>\n<p>Tallenna lomake, niin voit p\u00e4\u00e4tt\u00e4\u00e4, mit\u00e4 menetelm\u00e4\u00e4 haluat k\u00e4ytt\u00e4\u00e4 sen t\u00e4ytt\u00e4miseen.<\/p>\n<h2>T\u00e4ytet\u00e4\u00e4n dynaamisesti URL-parametreista<\/h2>\n<p>Voit liitt\u00e4\u00e4 GET-parametrit linkkiin sivulle, joka upottaa lomakkeen, esimerkiksi jos linkki on toisen tekstin sis\u00e4ll\u00e4 tai on mukautettu linkki WordPress-valikoissa.<\/p>\n<p>Lis\u00e4\u00e4 vain kyselymuuttujat avainarvopareihin siten, ett\u00e4 parametrin nimi avaimena ja niiden arvo sellaisena kuin haluat niiden arvon olevan. On mahdollista lis\u00e4t\u00e4 useita avainarvopareja, jos haluat t\u00e4ytt\u00e4\u00e4 useita kentti\u00e4 lomakkeeseen. Erottele kukin pari &quot;&#038;&quot;-merkill\u00e4.<\/p>\n<p>Olettaen, ett\u00e4 lomakkeesi on t\u00e4ll\u00e4 sivulla: &quot; <code>https:\/\/example.com\/contact-me\/<\/code>&quot; ja parametrisi nimi on <code>awp_populate_me<\/code>, voit t\u00e4ytt\u00e4\u00e4 kent\u00e4n k\u00e4ytt\u00e4m\u00e4ll\u00e4 t\u00e4t\u00e4 URL-osoitetta: &quot; <code>https:\/\/example.com\/contact-me\/?awp_populate_me=Hello<\/code>&quot;.<\/p>\n<p>Muista, ett\u00e4 URL-osoitteiden on oltava oikein koodattuja. Et voi esimerkiksi lis\u00e4t\u00e4 v\u00e4lily\u00f6ntej\u00e4 tai erikoismerkkej\u00e4 suoraan parametrin arvoksi. Tarjoaa &quot;Hei maailma!&quot; kuin arvo olisi &quot; <code>Hello%20world%21<\/code>&quot;. On olemassa monia verkkoty\u00f6kaluja URL-osoitteiden koodaamiseen, jos haluat edet\u00e4 t\u00e4ll\u00e4 tavalla.<\/p>\n<h2>T\u00e4ytet\u00e4\u00e4n dynaamisesti lyhytkoodista<\/h2>\n<p>Kaikki lomakkeet lis\u00e4t\u00e4\u00e4n lyhytkoodin kautta. Voit t\u00e4ytt\u00e4\u00e4 kentti\u00e4 dynaamisesti suoraan t\u00e4m\u00e4n lyhytkoodin sis\u00e4ll\u00e4. T\u00e4m\u00e4 menetelm\u00e4 voi olla hy\u00f6dyllinen, jos k\u00e4yt\u00e4t samaa lomaketta useissa viesteiss\u00e4 (esim. rekister\u00f6im\u00e4ll\u00e4 osallistujia useisiin eri tapahtumiin tai kursseihin), ja sinun on annettava jotain ainutlaatuista, jotta tied\u00e4t, mist\u00e4 tapahtumasta tai kurssista lomake on per\u00e4isin\u2026\u2026<\/p>\n<p>Normaalisti kun upotat lomakkeen, tuloksena on lyhytkoodi, joka n\u00e4ytt\u00e4\u00e4 suunnilleen t\u00e4lt\u00e4:<code>[gravityforms id=\"1\" title=\"Contact us\"]<\/code><\/p>\n<p>Muokkaa lyhytkoodia ja lis\u00e4\u00e4 avainjoukko <code>field_values<\/code>merkkijonoon, joka sis\u00e4lt\u00e4\u00e4 parametrin nimen, joka vastaa haluttua arvoa. Esimerkiksi parametrin <code>awp_populate_me<\/code>asettaminen &#8217;Hello World&#8217; tapahtuu seuraavasti:<\/p>\n<pre><code>[gravityforms id=\"1\" title=\"Contact us\" field_values=\"awp_populate_me=Hello World\"]<\/code><\/pre>\n<p>Jos sinun on t\u00e4ytett\u00e4v\u00e4 useita kentti\u00e4, lis\u00e4\u00e4 &quot;&#038;&quot; niiden v\u00e4liin, kuten:<\/p>\n<pre><code>[gravityforms id=\"1\" title=\"Contact us\" field_values=\"awp_populate_me=Hello World&amp;awp_another_field=Hello to you too\"]<\/code><\/pre>\n<h2>Kasvaa dynaamisesti Gutenbergin Blockista<\/h2>\n<p>Jos sinulla on GravityForms versio 2.4.13+ ja WordPress Gutenbergin kanssa (WordPress 5+), voit lis\u00e4t\u00e4 Gravity Forms lohkoksi. T\u00e4ss\u00e4 lohkossa sinulla on menetelm\u00e4 my\u00f6s kenttien t\u00e4ytt\u00e4miseen.<\/p>\n<p>Lis\u00e4\u00e4 lohko &quot;Forms&quot; Gutenbergiin ja valitse lomake. Lohkon pit\u00e4isi muuttua lomakkeen esikatseluksi. Laajenna oikeanpuoleisesta paneelista Lis\u00e4asetukset, niin l\u00f6yd\u00e4t tekstialueen nimelt\u00e4 &quot;Kent\u00e4n arvot&quot;. T\u00e4lle tekstialueelle voit kirjoittaa parametrien nimet ja arvot, aivan kuten kirjoittaisit lyhytkoodin. Esim &quot; <code>awp_populate_me=Hello World!<\/code>&quot;<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-153486-61e50e777b45f.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-153486-61e50e777b45f.png\" alt=\"T\u00e4ydellinen opas: Kenttien t\u00e4ytt\u00e4minen dynaamisesti painovoimamuodoissa\" ><\/a><\/p>\n<h2>T\u00e4ytet\u00e4\u00e4n dynaamisesti koodista<\/h2>\n<p>Ja lopuksi, jos haluat mieluummin t\u00e4ytt\u00e4\u00e4 kent\u00e4si PHP-koodilla, on olemassa suodattimia t\u00e4t\u00e4 varten. Voit sijoittaa t\u00e4m\u00e4n koodin teemaasi <code>functions.php<\/code>.<\/p>\n<p>Se, miten koodaat t\u00e4m\u00e4n, riippuu kent\u00e4n tyypist\u00e4; kuten voit luultavasti arvata, ett\u00e4 valintaruudussa t\u00e4ytet\u00e4\u00e4n (korvaa kaikki vaihtoehdot), valintaruutuja tai radioryhm\u00e4\u00e4 on k\u00e4sitelt\u00e4v\u00e4 eri tavalla kuin vain yksitt\u00e4isen tekstikent\u00e4n t\u00e4ytt\u00e4mist\u00e4.<\/p>\n<h3>Yksitt\u00e4isen arvokent\u00e4n t\u00e4ytt\u00e4minen<\/h3>\n<p>Kent\u00e4n, jolla on yksi arvo (t\u00e4m\u00e4 koskee tekstikentt\u00e4\u00e4, tekstialuetta, s\u00e4hk\u00f6postikentt\u00e4\u00e4, puhelinkentt\u00e4\u00e4 ja vastaavia) t\u00e4ytt\u00e4minen on helppoa suodattamalla <code>gform_field_value_&lt;parameter name&gt;<\/code>. Esimerkiss\u00e4mme:<\/p>\n<pre><code>add_filter('gform_field_value_awp_populate_me', function($value) {\n    return 'Hello world!';\n});<\/code><\/pre>\n<p>Voit my\u00f6s k\u00e4ytt\u00e4\u00e4 t\u00e4t\u00e4 suodatinta esivalitsemaan vaihtoehdon moniarvokent\u00e4ss\u00e4, esimerkiksi valitse (pudotusvalikko), valintanapit tai valintaruudut.<\/p>\n<h3>Valinta- tai valintapainikkeiden t\u00e4ytt\u00e4minen<\/h3>\n<p>Jos olet vain kiinnostunut vaihtoehdon esivalinnasta, seuraa yll\u00e4 olevaa ohjetta yhden arvokent\u00e4n t\u00e4ytt\u00e4miseksi. T\u00e4m\u00e4 koodi on tarkoitettu kentt\u00e4\u00e4n saatavien mahdollisten valintojen mukauttamiseen tai korvaamiseen.<\/p>\n<h4>Gravity Formsin muotojen render\u00f6intisuodattimet<\/h4>\n<p>Suodattimen <code>gform_pre_render<\/code>avulla voimme muokata lomaketta juuri ennen sen n\u00e4ytt\u00e4mist\u00e4. Mutta tehdess\u00e4mme muutoksia t\u00e4\u00e4ll\u00e4 meid\u00e4n tulee varmistaa, ett\u00e4 muutoksiamme sovelletaan kaikissa tapauksissa; joten meid\u00e4n on kytkett\u00e4v\u00e4 my\u00f6s <code>gform_admin_pre_render<\/code>(vastaava pre_render-suodatin, mutta vaikuttaa j\u00e4rjestelm\u00e4nvalvojan\/lomakkeen muokkaukseen), <code>gform_pre_validation<\/code>(vastaa lomakkeen vahvistamisesta ennen l\u00e4hett\u00e4mist\u00e4) ja <code>gform_pre_submission_filter<\/code>(suodatin vahvistuksen j\u00e4lkeen, mutta ennen merkinn\u00e4n tallentamista). \u00c4l\u00e4 huoli, k\u00e4yt\u00e4mme yht\u00e4 ja samaa toimintoa kaikille n\u00e4ille suodattimille.<\/p>\n<p>Voit suodattaa n\u00e4m\u00e4 suoraan tai voit antaa alaviivan ja lomakkeen tunnuksen suodattimen nimen j\u00e4lkeen vain tietyn lomakkeen suodattamista varten. Esim <code>gform_pre_render_1<\/code>. ajettaisiin vain lomakkeella, jonka lomaketunnus on 1.<\/p>\n<p>Kaikkien n\u00e4iden suodattimien argumenttina saat lomakeobjektin, josta saat lomakkeen tunnuksen (vaihtoehtoinen tapa lis\u00e4t\u00e4 lomaketunnus suodattimeen) ja kaikki sen kent\u00e4t. Lomakekent\u00e4t ovat joukko <code>Field<\/code>objekteja, mutta meid\u00e4n ei tarvitse huolehtia vain oikean kent\u00e4n <code>choices<\/code>ominaisuuden korvaamisesta.<\/p>\n<h4>Vaihtelemalla valintoja<\/h4>\n<p>On t\u00e4ysin sinun p\u00e4\u00e4tett\u00e4viss\u00e4si, mill\u00e4 tiedoilla haluat korvata valinnat, mutta kent\u00e4n <code>choices<\/code>ominaisuus tarvitsee taulukon, jossa on elementit &quot;teksti&quot; ja &quot;arvo&quot;. Esimerkiksi <code>['text' =&gt; 'Hello World!', 'value' =&gt; '1', 'text' =&gt; 'Second choice', 'value' =&gt; '2']<\/code>.<\/p>\n<pre><code>add_filter('gform_pre_render_1', 'awp_populate_choices');\nadd_filter('gform_pre_validation_1', 'awp_populate_choices');\nadd_filter('gform_pre_submission_filter_1', 'awp_populate_choices');\nadd_filter('gform_admin_pre_render_1', 'awp_populate_choices');\nfunction awp_populate_choices($form) {\n    foreach ($form['fields'] as &amp;$field) {\n        if ($field-&gt;inputName == 'awp_populate_me') {\n\u00a0\n            \/\/ Generate your data here. Below is just an example\n            $pages = get_posts('numberposts=-1&amp;post_status=publish&amp;post_type=page');\n\u00a0\n            \/\/ Generate a nice array that Gravity Forms can understand\n            $choices = [];\n            foreach ($pages as $page) {\n                $choices[] = ['text' =&gt; $page-&gt;post_title, 'value' =&gt; $page-&gt;ID];\n            }\n\u00a0\n            \/\/ Set choices to field\n            $field-&gt;choices = $choices;\n        }\n    }\n    return $form;\n}<\/code><\/pre>\n<p>Yll\u00e4 oleva koodi suodattaa vain lomakkeen tunnuksen 1. Se alkaa kiert\u00e4m\u00e4ll\u00e4 lomakkeen kentti\u00e4. On t\u00e4rke\u00e4\u00e4 huomata &quot;&#038;&quot; ennen elementti\u00e4 silmukassa, joka v\u00e4litt\u00e4\u00e4 sen viittauksella. T\u00e4m\u00e4 tarkoittaa, ett\u00e4 jos teemme muutoksia kohtaan <code>$field<\/code>, se otetaan k\u00e4ytt\u00f6\u00f6n ja tallennetaan suoraan <code>$form['fields']<\/code>.<\/p>\n<p>Toinen vaihe on kohdistaminen kentt\u00e4\u00e4n, jolla on kohdistettavan parametrin nimi. T\u00e4m\u00e4 on ominaisuus jokaiselle kent\u00e4lle <code>inputName<\/code>. Voit k\u00e4ytt\u00e4\u00e4 muita tapoja kohdistaa kenttiin, esim. sen ID (<code>id<\/code>) tai CSS-luokka (<code>cssClass<\/code>). Kun olemme l\u00f6yt\u00e4neet kentt\u00e4mme, meid\u00e4n on luotava korvaava matriisi valintoihin ja asetettava <code>$field-&gt;choices<\/code>t\u00e4m\u00e4. Yll\u00e4 olevassa esimerkiss\u00e4 kyselyn kaikilta sivuilta ja luon niiden l\u00e4pi oikein muotoillun taulukon.<\/p>\n<p>\u00c4l\u00e4 unohda palauttaa sit\u00e4 <code>$form<\/code>aivan lopussa, koska t\u00e4m\u00e4 on suodatin.<\/p>\n<p>On syyt\u00e4 mainita, ett\u00e4 t\u00e4m\u00e4 suodatin koskee my\u00f6s muokkauslomaketta (koska suodatamme <code>gform_admin_pre_render<\/code>). Muista kuitenkin, ett\u00e4 et voi en\u00e4\u00e4 muokata valintoja lomakkeen muokkauksessa \u2013 se ei vain tallenna muutoksiasi, koska t\u00e4m\u00e4 koodi ohittaa sen aina.<\/p>\n<h3>Valintaruutujen t\u00e4ytt\u00e4minen<\/h3>\n<p>Mainitsen sen uudelleen; Jos olet vain kiinnostunut valintaruudun esivalinnasta, seuraa yll\u00e4 olevaa ohjetta yhden arvokent\u00e4n t\u00e4ytt\u00e4miseksi. Mit\u00e4 tulee kaikkien valintaruutujen valintojen korvaamiseen, prosessi on hyvin samanlainen kuin yll\u00e4 olevien valinta- tai valintanappien t\u00e4ytt\u00e4minen, mutta pienill\u00e4 eroilla. Suosittelen ensin tutustumaan yll\u00e4 olevaan valinta- ja valintapainikkeiden selitykseen.<\/p>\n<p>K\u00e4yt\u00e4t samoja suodattimia ja aloitusprosessi on sama; Selaat lomakkeen kentti\u00e4 ja etsit haluamasi. Kuitenkin valintaruuduilla sinun on korvattava kaksi ominaisuutta kentt\u00e4objektissa; <code>choices<\/code>ja <code>inputs<\/code>. Ominaisuus <code>choices<\/code>odottaa samaa taulukkoa kuin valinta- tai valintapainikkeissa.<\/p>\n<p>Ominaisuus <code>input<\/code>odottaa taulukkoa, jossa on elementit &quot; <code>label<\/code>&quot; ja &quot; <code>id<\/code>&quot;. Se <code>label<\/code>on itsest\u00e4\u00e4n selv\u00e4 ja sen tulisi olla identtinen <code>text<\/code>valintataulukon kanssa. Elementin <code>id<\/code>on noudatettava Gravity Forms ID -s\u00e4\u00e4nt\u00f6j\u00e4; ketjuttamalla kent\u00e4n tunnus, piste ja valintatunnus, alkaen 1:st\u00e4 (esim. jos kent\u00e4n tunnus on 2 ja valinnan tunnus on 3, oikea <code>id<\/code>on &quot; <code>2.3<\/code>&quot;).<\/p>\n<pre><code>add_filter('gform_pre_render_1', 'awp_populate_choices');\nadd_filter('gform_pre_validation_1', 'awp_populate_choices');\nadd_filter('gform_pre_submission_filter_1', 'awp_populate_choices');\nadd_filter('gform_admin_pre_render_1', 'awp_populate_choices');\nfunction awp_populate_choices($form) {\n    foreach ($form['fields'] as &amp;$field) {\n        if ($field-&gt;inputName == 'awp_populate_me') {\n\u00a0\n            \/\/ Generate your data here. Below is just an example\n            $pages = get_posts('numberposts=-1&amp;post_status=publish&amp;post_type=page');\n\u00a0\n            \/\/ Generate nice arrays that Gravity Forms can understand\n            $choices = [];\n            $inputs = [];\n            $input_id = 1;\n            foreach ($pages as $page) {\n                $choices[] = ['text' =&gt; $page-&gt;post_title, 'value' =&gt; $page-&gt;ID];\n                $inputs[] = ['label' =&gt; $page-&gt;post_title, 'id' =&gt; $field-&gt;id. '.'. $input_id];\n                $input_id++;\n            }\n\u00a0\n            \/\/ Set choices to field\n            $field-&gt;choices = $choices;\n            $field-&gt;inputs = $inputs;\n        }\n    }\n    return $form;\n}<\/code><\/pre>\n<p>Koska valintatunnusten on aloitettava luvusta 1, aloitamme laskurimuuttujan ennen silmukkaa ja lis\u00e4\u00e4mme 1:n jokaiselle silmukan elementille, ja k\u00e4yt\u00e4mme sit\u00e4 yhdess\u00e4 kentt\u00e4tunnuksen ja pisteen kanssa kuten <code>id<\/code>taulukossa <code>inputs<\/code>.<\/p>\n<p>Kun meill\u00e4 on kaksi taulukkoamme, asetamme ne kentt\u00e4\u00e4n <code>choices<\/code>ja <code>inputs<\/code>ominaisuuksiin ja palautamme muokatun lomakkeen.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/awhitepixel.com\" class=\"external external_icon\">awhitepixel.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>T\u00e4ydellinen opas Gravity Forms -lomakkeen kenttien esivalinnasta tai esit\u00e4ytt\u00e4misest\u00e4 ja pudotusvalikon, valintanapin tai valintaruutujen valinnan korvaamisesta.<\/p>\n","protected":false},"author":1,"featured_media":153487,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[895,719,719,895,813,1110,834,843,803,803,813,834,843,864,864],"tags":[1166],"class_list":{"0":"post-233421","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","6":"hentry","7":"category-koodi","8":"category-kehittaejae","11":"category-laajennuksia","12":"category-n-a","13":"category-opas-aloittelijoille","14":"category-opetusohjelmia","15":"category-php-5","20":"category-wordpress-5","22":"tag-affiai-fi"},"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/posts\/233421","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/comments?post=233421"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/posts\/233421\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/media\/153487"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/media?parent=233421"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/categories?post=233421"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/tags?post=233421"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}