{"id":233771,"date":"2023-02-22T12:59:00","date_gmt":"2023-02-22T09:59:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=233771"},"modified":"2022-11-11T12:18:45","modified_gmt":"2022-11-11T09:18:45","slug":"kuinka-lisaetae-mukautettuja-kenttiae-ja-vaelilehtiae-woocommerce-tuotetietojen-metaboxiin-koodin-mukaan","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/fi\/kuinka-lisaetae-mukautettuja-kenttiae-ja-vaelilehtiae-woocommerce-tuotetietojen-metaboxiin-koodin-mukaan\/","title":{"rendered":"Kuinka lis\u00e4t\u00e4 mukautettuja kentti\u00e4 ja v\u00e4lilehti\u00e4 WooCommerce-tuotetietojen metaboxiin koodin mukaan"},"content":{"rendered":"\n<p>T\u00e4ss\u00e4 viestiss\u00e4 opimme lis\u00e4\u00e4m\u00e4\u00e4n mukautettuja metakentti\u00e4 WooCommercen tuotetietojen metalaatikkoon; kuinka lis\u00e4t\u00e4 kentti\u00e4 ja miten lis\u00e4t\u00e4 oma mukautettu v\u00e4lilehti. K\u00e4sittelemme yksityiskohtaisesti kenttien lis\u00e4\u00e4mist\u00e4, mihin ne lis\u00e4t\u00e4\u00e4n, kuinka ne tallennetaan ja lopuksi kuinka ne n\u00e4ytet\u00e4\u00e4n k\u00e4ytt\u00f6liittym\u00e4ss\u00e4.<\/p>\n<h2>Mukautettujen kenttien lis\u00e4\u00e4minen olemassa oleviin paneeleihin<\/h2>\n<p>Ensin tarkastellaan, kuinka kentt\u00e4 lis\u00e4t\u00e4\u00e4n olemassa oleviin paneeleihin. Meid\u00e4n on tartuttava kahteen koukkuun; yksi kent\u00e4n tulostamiseen ja toinen sen arvon tallentamiseen. Ensimm\u00e4inen koukku riippuu siit\u00e4, mill\u00e4 v\u00e4lilehdell\u00e4 haluat n\u00e4ytt\u00e4\u00e4 kent\u00e4n.<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-152172-61e4d3f68509c.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-152172-61e4d3f68509c.png\" alt=\"Kuinka lis\u00e4t\u00e4 mukautettuja kentti\u00e4 ja v\u00e4lilehti\u00e4 WooCommerce-tuotetietojen metaboxiin koodin mukaan\" ><\/a><\/p>\n<p>Tuotetietojen metalaatikko<\/p>\n<p>Muista, ett\u00e4 v\u00e4lilehden n\u00e4kyvyys vaihtelee tuotetyypin mukaan. Esimerkiksi &quot;Yleiset&quot;-v\u00e4lilehti poistetaan, kun vaihdat ryhmiteltyyn tuotetyyppiin. Sinun ei pit\u00e4isi siis vain harkita, miss\u00e4 mukautetut kent\u00e4si loogisesti sopivat, vaan sinun on harkittava paneelia, joka on n\u00e4kyviss\u00e4 kaikille haluamillesi tuotetyypeille. on luettelo yleisimmist\u00e4 saatavilla olevista koukuista:<\/p>\n<ul>\n<li><code>woocommerce_product_options_general_product_data<\/code>(&quot;Yleinen&quot;)<\/li>\n<li><code>woocommerce_product_options_inventory_product_data<\/code>(&quot;Varasto&quot;<\/li>\n<li><code>woocommerce_product_options_shipping<\/code>(&quot;Laivaus&quot;)<\/li>\n<li><code>woocommerce_product_options_related<\/code>(&quot;Linkitetyt tuotteet&quot;)<\/li>\n<li><code>woocommerce_product_options_attributes<\/code>(&quot;Attribuutit&quot;)<\/li>\n<li><code>woocommerce_product_options_advanced<\/code>(&quot;Pitk\u00e4lle kehittynyt&quot;)<\/li>\n<\/ul>\n<h3>Lomakkeen sy\u00f6tteen lis\u00e4\u00e4minen<\/h3>\n<p>Mit\u00e4 tulee lomakesy\u00f6tteen tulostamiseen, voit tulostaa manuaalisesti lomakkeen sy\u00f6tteen HTML:n (esim <code>&lt;input type=\"text\"...&gt;<\/code>. ), mutta WooCommerce tarjoaa yksinkertaisia \u200b\u200btoimintoja mink\u00e4 tahansa tyyppisten kenttien lis\u00e4\u00e4miseen. Suosittelen k\u00e4ytt\u00e4m\u00e4\u00e4n niit\u00e4. Katso t\u00e4\u00e4lt\u00e4 WooCommercen <a href=\"https:\/\/docs.woocommerce.com\/wc-apidocs\/source-function-woocommerce_wp_text_input.html\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">yleiskatsaus<\/a> kaikista mahdollisista sy\u00f6tt\u00f6tyypeist\u00e4 ja siit\u00e4, mit\u00e4 argumentteja voit ohjata tulosteen ohjaamiseen.<\/p>\n<p>Mit\u00e4 tulee t\u00e4h\u00e4n opetusohjelmaan, aion lis\u00e4t\u00e4 yksinkertaisen tekstisy\u00f6tteen inventaario-v\u00e4lilehdelle kunkin paketin nimikkeiden lukum\u00e4\u00e4r\u00e4n kirjoittamiseksi. Mit\u00e4 tulee avaimeen, jolla mukautettu arvosi tallennetaan, lis\u00e4\u00e4 aina alaviiva &quot;_&quot; ennen sit\u00e4, minun tapauksessani se on &quot;_number_in_package&quot;:<\/p>\n<pre><code>add_action('woocommerce_product_options_inventory_product_data', function() {\n    woocommerce_wp_text_input([\n            'id' =&gt; '_number_in_package',\n            'label' =&gt; __('Number in package', 'txtdomain'),\n    ]);\n});<\/code><\/pre>\n<p>Tallenna ja muokkaa tuotetta. Sinun pit\u00e4isi n\u00e4hd\u00e4 mukautettu kentt\u00e4si Mainosjakauma-v\u00e4lilehden alareunassa:<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-152172-61e4d3f74b757.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-152172-61e4d3f74b757.png\" alt=\"Kuinka lis\u00e4t\u00e4 mukautettuja kentti\u00e4 ja v\u00e4lilehti\u00e4 WooCommerce-tuotetietojen metaboxiin koodin mukaan\" ><\/a><\/p>\n<p>Mukautettu kentt\u00e4 &quot;Numero paketissa&quot; lis\u00e4tty alareunaan<\/p>\n<h3>Huomautus kent\u00e4n n\u00e4kyvyydest\u00e4 tuotetyypist\u00e4 riippuen<\/h3>\n<p>WooCommercen tuotetietojen metaboxissa on paljon Javascripti\u00e4, joka piilottaa ja n\u00e4ytt\u00e4\u00e4 sek\u00e4 kent\u00e4t ett\u00e4 v\u00e4lilehdet\/paneelit. Voit helposti hy\u00f6dynt\u00e4\u00e4 t\u00e4t\u00e4, jos haluat kentt\u00e4si n\u00e4kyv\u00e4n vain tietyille tuotetyypeille antamalla kent\u00e4llesi tietyt luokkanimet.<\/p>\n<p>Oletetaan, ett\u00e4 haluat kent\u00e4n n\u00e4kyv\u00e4n vain, jos tuote on tyyppi\u00e4 yksinkertainen tuote, tai haluat sen olevan piilossa, jos tuote on muuttuva tuote. WooCommerce kuuntelee tiettyj\u00e4 luokkien nimi\u00e4, kuten <code>show_if_&lt;producttype&gt;<\/code>ja, <code>hide_if_&lt;producttype&gt;<\/code>ja voit yhdist\u00e4\u00e4 useita luokkia hienos\u00e4\u00e4t\u00e4\u00e4ksesi, milloin kent\u00e4n pit\u00e4isi olla piilossa tai n\u00e4kyviss\u00e4.<\/p>\n<p>Jos esimerkiksi haluan, ett\u00e4 kentt\u00e4ni n\u00e4kyy vain yksinkertaisille tuotteille; Lis\u00e4\u00e4n t\u00e4m\u00e4n <code>wrapper_class<\/code>kent\u00e4n sy\u00f6tteeseeni:<\/p>\n<pre><code>add_action('woocommerce_product_options_inventory_product_data', function() {\n    woocommerce_wp_text_input([\n        'id' =&gt; '_number_in_package',\n        'label' =&gt; __('Number in package', 'txtdomain'),\n        'wrapper_class' =&gt; 'show_if_simple'\n    ]);\n});<\/code><\/pre>\n<p>Voit my\u00f6s asettaa <code>wrapper_class<\/code>esim. &#8217; <code>show_if_simple show_if_grouped<\/code>&#8217;, jotta kentt\u00e4 n\u00e4kyy vain tuotteille, jotka ovat joko yksinkertaisia \u200b\u200btai ryhmiteltyj\u00e4. Kokeile itse!<\/p>\n<h3>Mukautetun kent\u00e4n tallentaminen<\/h3>\n<p>T\u00e4ll\u00e4 hetkell\u00e4 mit\u00e4 tahansa kentt\u00e4\u00e4n sy\u00f6tt\u00e4m\u00e4\u00e4si ei tallenneta. Tehd\u00e4\u00e4n se seuraavaksi. Kiinnit\u00e4mme <code>woocommerce_process_product_meta<\/code>ja tallennamme PHP:n globaalin arvon <code>$_POST<\/code>(lomakkeen l\u00e4hetys).<\/p>\n<pre><code>add_action('woocommerce_process_product_meta', function($post_id) {\n    $product = wc_get_product($post_id);\n    $num_package = isset($_POST['_number_in_package'])? $_POST['_number_in_package']: '';\n    $product-&gt;update_meta_data('_number_in_package', sanitize_text_field($num_package));\n    $product-&gt;save();\n});<\/code><\/pre>\n<p>Selit\u00e4n nopeasti yll\u00e4 olevan koodin. Voit yksinkertaisesti tallentaa kent\u00e4n k\u00e4ytt\u00e4m\u00e4ll\u00e4 <code>update_post_meta()<\/code>, mutta uudemmissa WooCommercen versioissa tuotteen k\u00e4sittely\u00e4 on parannettu huomattavasti. Niin kauan kuin sinulla on tuoteobjekti (jonka saamme soittamalla <code>wc_get_product()<\/code>viestitunnuksella), voit helposti muokata objektissa olevia tuotetietoja ja lopulta soittaa <code>save()<\/code>kerran p\u00e4ivitt\u00e4\u00e4ksesi muutokset. T\u00e4m\u00e4 on eritt\u00e4in hy\u00f6dyllist\u00e4 varsinkin, jos haluat tallentaa useita kentti\u00e4 \u2013 jolloin sinun ei tarvitse suorittaa tietokantatoimintoja jokaiselle kent\u00e4lle, vain viimeisen kerran, kun soitat <code>save()<\/code>.<\/p>\n<p>K\u00e4yt\u00e4 <code>update_meta_data()<\/code>objektissa jokaiselle tallennettavalle metadatalle.<\/p>\n<p>Yll\u00e4 olevalla toiminnolla kentt\u00e4si pit\u00e4isi nyt tallentua, kun p\u00e4ivit\u00e4t sen editoinnissa! Huomaa my\u00f6s, ett\u00e4 k\u00e4ytt\u00e4m\u00e4ll\u00e4 WooCommercen toimintoja kent\u00e4n tulostamiseen, sinun ei tarvitse hankkia kent\u00e4n arvoa manuaalisesti ennen kent\u00e4n tulostamista \u2013 se on t\u00e4ysin automaattinen.<\/p>\n<h3>Mukautetun kent\u00e4n n\u00e4ytt\u00e4minen k\u00e4ytt\u00f6liittym\u00e4ss\u00e4<\/h3>\n<p>Ensimm\u00e4inen vaihe on selvitt\u00e4\u00e4, mit\u00e4 koukkua haluat k\u00e4ytt\u00e4\u00e4 mukautetun kent\u00e4n tulostamiseen. WooCommerce tarjoaa runsaasti saatavilla olevia koukkuja, joiden avulla voit hallita tarkasti, miss\u00e4 haluat tulostaa. Jos olet ep\u00e4varma, katso <code>plugins\/woocommerce\/templates\/<\/code>n\u00e4m\u00e4 tiedostot ja l\u00f6yd\u00e4t helposti sopivan koukun. Voit my\u00f6s ohittaa mallin ja lis\u00e4t\u00e4 tulosteen malliin, mutta suosittelen aina koukkujen k\u00e4ytt\u00f6\u00e4 sen sijaan.<\/p>\n<p>Mit\u00e4 tulee minuun, haluan, ett\u00e4 mukautettu kentt\u00e4ni tulostetaan yksitt\u00e4isess\u00e4 tuotteessa metadiv:n sis\u00e4ll\u00e4 \u2013 samalla, kun WooCommerce tulostaa SKU:n ja luokan. K\u00e4yt\u00e4n t\u00e4h\u00e4n koukkua <code>woocommerce_product_meta_start<\/code>. Koukkujen sis\u00e4ll\u00e4 (kuten l\u00e4hes kaikissa mallikoukuissa) p\u00e4\u00e4set k\u00e4siksi globaaliin viestiobjektiin. Noudatan samaa peukalos\u00e4\u00e4nt\u00f6\u00e4 kuin pelastaessani kentt\u00e4ni; k\u00e4yt\u00e4 <code>get_meta()<\/code>tuoteobjektissa mukautetun kent\u00e4n hankkimiseen:<\/p>\n<pre><code>add_action('woocommerce_product_meta_start', function() {\n    global $post;\n    $product = wc_get_product($post-&gt;ID);\n    $num_package = $product-&gt;get_meta('_number_in_package');\n    if (!empty($num_package)) {\n        printf('&lt;div class=\"custom-sku\"&gt;%s: %s&lt;\/div&gt;', __('Number in package', 'txtdomain'), $num_package);\n    }\n});<\/code><\/pre>\n<h2>Mukautetun v\u00e4lilehden ja paneelin lis\u00e4\u00e4minen tuotetietojen metalaatikkoon<\/h2>\n<p>Jos haluat lis\u00e4t\u00e4 kokoelman mukautettuja kentti\u00e4, jotka kuuluvat loogisesti yhteen, voi olla hyv\u00e4 idea ryhmitell\u00e4 ne mukautetulle v\u00e4lilehdelle. Mukautetun v\u00e4lilehden lis\u00e4\u00e4miseksi Tuotetiedot-metalaatikkoon meid\u00e4n on kytkett\u00e4v\u00e4 suodatin itse v\u00e4lilehden lis\u00e4\u00e4mist\u00e4 varten ja koukku paneelin sis\u00e4ll\u00f6n tulostamista varten. Lopuksi meid\u00e4n on viel\u00e4 lis\u00e4tt\u00e4v\u00e4 sama koukku kuin yll\u00e4 peltojen pelastamiseksi.<\/p>\n<p>Esimerkiksi aion lis\u00e4t\u00e4 mukautetun paneelin nimelt\u00e4 &quot;Lis\u00e4tiedot&quot;, johon haluan lis\u00e4t\u00e4 tekstinsy\u00f6t\u00f6n, valintaruudun ja numeron sy\u00f6tteen.<\/p>\n<p>Ensin suodatamme <code>woocommerce_product_data_tabs<\/code>ja lis\u00e4\u00e4mme v\u00e4lilehtemme sen joukkoon.<\/p>\n<pre><code>add_filter('woocommerce_product_data_tabs', function($tabs) {\n    $tabs['additional_info'] = [\n        'label' =&gt; __('Additional info', 'txtdomain'),\n        'target' =&gt; 'additional_product_data',\n        'class' =&gt; ['hide_if_external'],\n        'priority' =&gt; 25\n    ];\n    return $tabs;\n});<\/code><\/pre>\n<p>T\u00e4ss\u00e4 on joitain hy\u00f6dyllisi\u00e4 argumentteja. Voit esimerkiksi <code>class<\/code>ohjata v\u00e4lilehden n\u00e4kyvyytt\u00e4 tuotetyypist\u00e4 riippuen k\u00e4ytt\u00e4m\u00e4ll\u00e4 n\u00e4pp\u00e4int\u00e4. Jos unohdat sen, tutustu <a href=\"#field-visibility\">yll\u00e4 mainittuun<\/a> kent\u00e4n n\u00e4kyvyytt\u00e4 k\u00e4sittelev\u00e4\u00e4n osioon. Muista kuitenkin, ett\u00e4 v\u00e4lilehdiss\u00e4 luokat on annettava taulukkona, ei merkkijonona. Voit my\u00f6s <code>priority<\/code>m\u00e4\u00e4ritt\u00e4\u00e4, miss\u00e4 v\u00e4lilehti n\u00e4kyy. Esim. 25:n k\u00e4ytt\u00e4minen asettaa v\u00e4lilehden heti &quot;Inventory&quot; j\u00e4lkeen.<\/p>\n<p>Oletusarvoisesti v\u00e4lilehti n\u00e4kyy jakoavainkuvakkeena. Valitettavasti (t\u00e4ll\u00e4 hetkell\u00e4) ei ole mahdollista ohjata sit\u00e4 suodattimen kautta. Jos t\u00e4m\u00e4 on sinulle t\u00e4rke\u00e4\u00e4, voit lis\u00e4t\u00e4 j\u00e4rjestelm\u00e4nvalvojan CSS:n ja tarjota eri luokan v\u00e4lilehdelle. <a href=\"https:\/\/github.com\/woocommerce\/woocommerce-icons\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">T\u00e4ss\u00e4 on yleiskatsaus<\/a> k\u00e4ytett\u00e4viss\u00e4 olevista kuvakkeista WooCommercessa.<\/p>\n<h3>Paneelin ulostulo<\/h3>\n<p>Seuraava vaihe on <code>woocommerce_product_data_panels<\/code>paneelin sis\u00e4ll\u00f6n kytkeminen ja tulostaminen. T\u00e4rke\u00e4 huomautus t\u00e4ss\u00e4 on aloittaa tuloste attribuutilla, <code>div<\/code>jolla on <code>id<\/code>sama nimi kuin annoit n\u00e4pp\u00e4imeksi v\u00e4lilehdiss\u00e4 (minun tapauksessani &#8217; <code>additional_info<\/code>&#8217;). Mit\u00e4 tulee sis\u00e4lt\u00f6\u00f6n, se on sinun p\u00e4\u00e4tett\u00e4viss\u00e4si \u2013 voit lis\u00e4t\u00e4 mit\u00e4 tahansa HTML-koodia, mutta suosittelen k\u00e4ytt\u00e4m\u00e4\u00e4n WooCommercen toimintoja lomakekenttien tulostamiseen. Samat edut kenttien piilottamisessa tai n\u00e4ytt\u00e4misess\u00e4 toimivat my\u00f6s t\u00e4\u00e4ll\u00e4.<\/p>\n<pre><code>add_action('woocommerce_product_data_panels', function() {\n    ?&gt;&lt;div id=\"additional_product_data\" class=\"panel woocommerce_options_panel hidden\"&gt;&lt;?php\n\u00a0\n    woocommerce_wp_text_input([\n        'id' =&gt; '_dummy_text_input',\n        'label' =&gt; __('Dummy text input', 'txtdomain'),\n        'wrapper_class' =&gt; 'show_if_simple',\n    ]);\n    woocommerce_wp_checkbox([\n        'id' =&gt; '_dummy_checkbox',\n        'label' =&gt; __('Dummy checkbox', 'txtdomain'),\n        'wrapper_class' =&gt; 'hide_if_grouped',\n    ]);\n    woocommerce_wp_text_input([\n        'id' =&gt; '_dummy_number_input',\n        'label' =&gt; __('Dummy number input', 'txtdomain'),\n        'type' =&gt; 'number',\n        'custom_attributes' =&gt; [\n            'step' =&gt; '1',\n            'min' =&gt; '0'\n        ]\n    ]);\n    ?&gt;&lt;\/div&gt;&lt;?php\n});<\/code><\/pre>\n<p>Tallennuksen j\u00e4lkeen sinun pit\u00e4isi nyt n\u00e4hd\u00e4 v\u00e4lilehti ja sen sis\u00e4lt\u00f6 Tuotetiedot-metalaatikossa (ellei tuote tietenk\u00e4\u00e4n ole ulkoinen tuote).<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-152172-61e4d3f80e5c5.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-152172-61e4d3f80e5c5.png\" alt=\"Kuinka lis\u00e4t\u00e4 mukautettuja kentti\u00e4 ja v\u00e4lilehti\u00e4 WooCommerce-tuotetietojen metaboxiin koodin mukaan\" ><\/a><\/p>\n<p>J\u00e4ljelle j\u00e4\u00e4 vain tallentamaan mukautettuihin kenttiin sy\u00f6tetyt tiedot, ja k\u00e4yt\u00e4mme t\u00e4h\u00e4n samaa prosessia kuin yll\u00e4:<\/p>\n<pre><code>add_action('woocommerce_process_product_meta', function($post_id) {\n    $product = wc_get_product($post_id);\n    $product-&gt;update_meta_data('_dummy_text_input', sanitize_text_field($_POST['_dummy_text_input']));\n\u00a0\n    $dummy_checkbox = isset($_POST['_dummy_checkbox'])? 'yes': '';\n    $product-&gt;update_meta_data('_dummy_checkbox', $dummy_checkbox);\n\u00a0\n    $product-&gt;update_meta_data('_dummy_number_input', sanitize_text_field($_POST['_dummy_number_input']));\n    $product-&gt;save();\n});<\/code><\/pre>\n<p>Huomautus: WooCommercessa on yleinen s\u00e4\u00e4nt\u00f6, jonka mukaan kaikki valintaruudut tallennetaan nimell\u00e4 &quot; <code>yes<\/code>&quot;, jos ne on valittu, tai tyhj\u00e4n\u00e4 merkkijonona, jos niit\u00e4 ei ole valittu. Noudattamalla WooCommercen s\u00e4\u00e4nt\u00f6\u00e4 ja tallentamalla valitun valintaruudun nimell\u00e4 &quot; <code>yes<\/code>&quot;, t\u00e4m\u00e4 varmistaa, ett\u00e4 toimin <code>woocommerce_wp_checkbox()<\/code>tarkoitetulla tavalla, kun se noutaa kentt\u00e4ni nykyisen arvon.<\/p>\n<h2>Johtop\u00e4\u00e4t\u00f6s<\/h2>\n<p>T\u00e4ss\u00e4 postauksessa n\u00e4yt\u00e4n, kuinka voit lis\u00e4t\u00e4 mukautettuja kentti\u00e4si WooCommercen tuotetietojen metalaatikkoon, tallentaa ne, hallita niiden n\u00e4kyvyytt\u00e4 ja yksinkertaisen esimerkin kent\u00e4n tulostamisesta k\u00e4ytt\u00f6liittym\u00e4\u00e4n. N\u00e4ytin my\u00f6s kuinka lis\u00e4t\u00e4 mukautettu v\u00e4lilehti metalaatikkoon ja lis\u00e4t\u00e4 kent\u00e4t sinne. Toivottavasti t\u00e4m\u00e4 auttoi sinua mukauttamaan WooCommercea itse!<\/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\u00e4ss\u00e4 viestiss\u00e4 opimme lis\u00e4\u00e4m\u00e4\u00e4n mukautettuja metakentti\u00e4 ja v\u00e4lilehti\u00e4 WordPress WooCommercen tuotetietojen metalaatikkoon koodilla.<\/p>\n","protected":false},"author":1,"featured_media":224911,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[895,719,719,895,813,1110,843,813,843,854,854,864,864],"tags":[1166],"class_list":{"0":"post-233771","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-opetusohjelmia","16":"category-woocommerce-5","18":"category-wordpress-5","20":"tag-affiai-fi"},"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/posts\/233771","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=233771"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/posts\/233771\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/media\/224911"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/media?parent=233771"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/categories?post=233771"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/tags?post=233771"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}