{"id":233464,"date":"2023-02-14T14:42:00","date_gmt":"2023-02-14T11:42:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=233464"},"modified":"2023-02-20T18:46:19","modified_gmt":"2023-02-20T15:46:19","slug":"come-creare-un-blocco-gutenberg-personalizzato-per-wordpress-serie-di-tutorial","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/it\/come-creare-un-blocco-gutenberg-personalizzato-per-wordpress-serie-di-tutorial\/","title":{"rendered":"Come creare un blocco Gutenberg personalizzato per WordPress: serie di tutorial"},"content":{"rendered":"\n<p>Questa \u00e8 una serie di tutorial dettagliati su come creare i tuoi blocchi Gutenberg WordPress personalizzati. \u00c8 per te che sei uno sviluppatore di temi o plugin e, come me, sei frustrato dalla mancanza di documentazione. La maggior parte di ci\u00f2 che ho imparato quando si tratta di sviluppare nel nuovo mondo Javascript di WordPress \u00e8 attraverso tentativi ed errori, sperimentando vigorosamente e leggendo tutto ci\u00f2 che \u00e8 correlato che ho trovato. E cos\u00ec ho pensato di raccogliere tutto ci\u00f2 che ho imparato finora in un grande tutorial.<\/p>\n<p>Attraverso 10 parti, questo tutorial mira a insegnarti come scrivere i tuoi blocchi personalizzati. Non importa a cosa servano, partendo dalle basi e lavorando fino a funzionalit\u00e0 pi\u00f9 complesse. Ti consiglio di scrivere tutto da solo invece di copiare e incollare il codice. Questo \u00e8 il modo migliore per imparare! Segui la serie dal passaggio 1 al passaggio 10 mentre costruiremo sopra il blocco mentre avanziamo.<\/p>\n<h2>Cosa devi sapere prima di iniziare<\/h2>\n<p>Prima di tuffarci nei gradini; un disclaimer. Ci sono alcune cose che dovresti gi\u00e0 sapere in anticipo su cos&#8217;\u00e8 questa serie e cosa non lo \u00e8.<\/p>\n<h3>I linguaggi di programmazione<\/h3>\n<p>Devi conoscere Javascript \u2013 questo \u00e8 un dato di fatto. Non c&#8217;\u00e8 bisogno di essere un esperto, ma questo non \u00e8 un tutorial Javascript. Come per ECMAScript versione Javascript; puoi scrivere in ES5 e non preoccuparti di compilare il tuo codice con Babel e cose del genere. Tuttavia questa serie \u00e8 scritta con il codice ES6 e ESNext. Non preoccuparti: il passaggio 1 \u00e8 dedicato a guidarti nella configurazione di un ambiente di sviluppo pronto per codificare in ESNext con tutte le nuove sintassi.<\/p>\n<p>Come probabilmente saprai, Gutenberg \u00e8 basato su <a href=\"https:\/\/reactjs.org\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">React JS<\/a>. Questa serie non \u00e8 nemmeno un tutorial di React e presuppone una conoscenza di base di React e di come funziona. Ancora una volta non c&#8217;\u00e8 bisogno di essere un esperto. Dato che React \u00e8 in circolazione da un po&#8217;, ci sono molti buoni tutorial, documentazione e risorse dedicate per insegnarti React. Quindi ti consiglio di cercare prima questi.<\/p>\n<p>Questa serie \u00e8 focalizzata sull&#8217;apprendimento delle parti Javascript, React e JSX e non riguarda lo stile \/ CSS. Poich\u00e9 l&#8217;obiettivo per il tuo blocco pu\u00f2 essere drasticamente diverso, ho scelto di non concentrarmi sullo stile e di fornire solo un HTML molto semplice. Sta a te aggiungere il tuo stile e l&#8217;output HTML necessario per rendere il tuo blocco esattamente come ti serve.<\/p>\n<h3>L&#8217;et\u00e0 di questo tutorial<\/h3>\n<p>E infine, per favore, considera il momento in cui questa serie \u00e8 stata scritta. Gutenberg \u00e8 ancora piuttosto nuovo, ma sta cambiando drasticamente e viene migliorato.<\/p>\n<p>Se lo trovi in \u200b\u200bun futuro lontano, alcuni codici potrebbero essere deprecati o sostituiti con metodi migliori. Questa guida \u00e8 stata scritta e finalizzata in WordPress versione 5.2.3 (fine anno 2019).<\/p>\n<h2>Cosa imparerai<\/h2>\n<p>Nelle prime parti ci concentriamo sulle basi. Abbiamo creato un ambiente di sviluppo con l&#8217;esecuzione della compilazione del nostro codice. E le basi su come registrare un blocco e anche le parti PHP necessarie. Impareremo la vasta libreria di componenti e metodi a nostra disposizione da WordPress Gutenberg.<\/p>\n<p>Andando avanti impareremo come aggiungere sezioni e impostazioni per il nostro blocco nella barra laterale dell&#8217;editor (Inspector) oltre a personalizzare la barra degli strumenti. Lungo la strada toccheremo molti tipi di input diversi e come utilizzare il componente di Gutenberg per questi. E ovviamente impareremo come salvare, aggiornare e inviare le informazioni salvate al nostro blocco e come funziona dietro le quinte.<\/p>\n<p>Alla fine esamineremo cose pi\u00f9 avanzate come i blocchi dinamici e come utilizzare PHP per eseguire il rendering dell&#8217;output del blocco. E infine come eseguire query sui post all&#8217;interno dell&#8217;editor, consentendo all&#8217;utente di selezionare un post da un elenco per il rendering.<\/p>\n<h3>Sommario<\/h3>\n<p>Di seguito troverai i collegamenti diretti a ciascuna parte della serie.<\/p>\n<ul>\n<li>\n<p><strong><a href=\"https:\/\/awhitepixel.com\/blog\/how-to-create-custom-gutenberg-blocks-part-1-setting-up-the-development-environment\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Parte 1: Configurazione dell&#8217;ambiente di sviluppo<\/a><\/strong><br \/>\nNella prima parte di questa serie di tutorial su come creare blocchi Gutenberg personalizzati, \u00e8 necessario configurare il nostro ambiente di sviluppo. Abbiamo bisogno di un posto dove possiamo scrivere il nostro codice nelle sintassi ES6\/ESNext e compilarlo in movimento.<\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/awhitepixel.com\/blog\/how-to-create-custom-gutenberg-blocks-part-2-registering-a-block\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Parte 2: Registrazione di un blocco<\/a><br \/>\nIn questa parte scriveremo Javascript per registrare e configurare il nostro blocco personalizzato. Alla fine registreremo lo script con PHP e faremo il codice PHP necessario affinch\u00e9 WordPress lo riconosca come un nuovo blocco.<\/p>\n<\/li>\n<li>\n<p><strong><a href=\"https:\/\/awhitepixel.com\/blog\/how-to-create-custom-gutenberg-blocks-part-3-props-and-wordpress-components\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Parte 3: Props e componenti di WordPress<\/a><\/strong><br \/>\nNel passaggio precedente abbiamo imparato come registrare un blocco personalizzato, sia in Javascript che in PHP. In questo passaggio impareremo come utilizzare i componenti di WordPress per aggiungere diversi tipi di campi e impostazioni.<\/p>\n<\/li>\n<li>\n<p><strong><a href=\"https:\/\/awhitepixel.com\/blog\/how-to-create-custom-gutenberg-blocks-part-4-attributes\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Parte 4: Attributi<\/a><\/strong><br \/>\nIn questa parte vedremo come definire gli attributi, recuperarne i valori e aggiornarli. Con gli attributi possiamo accettare l&#8217;input dall&#8217;editor, salvarlo ed emetterlo come vogliamo.<\/p>\n<\/li>\n<li>\n<p><strong><a href=\"https:\/\/awhitepixel.com\/blog\/how-to-create-custom-gutenberg-blocks-part-5-adding-inspector-settings\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Parte 5: Aggiunta delle impostazioni di Inspector<\/a><\/strong><br \/>\nIn questo passaggio ci concentreremo su ci\u00f2 che WordPress (almeno nel codice) chiama Inspector: la barra laterale sul lato destro dell&#8217;editor. Toccheremo alcuni nuovi componenti che hanno senso posizionare nella barra laterale e come gestirli.<\/p>\n<\/li>\n<li>\n<p><strong><a href=\"https:\/\/awhitepixel.com\/blog\/how-to-create-custom-wordpress-gutenberg-blocks-part-6-adding-toolbars\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Parte 6: Aggiunta di barre degli strumenti<\/a><\/strong><br \/>\nIn questo post impareremo come aggiungere le barre degli strumenti di WordPress al nostro blocco, ovvero per l&#8217;allineamento e l&#8217;allineamento dei blocchi. Impareremo anche ad aggiungere le nostre barre degli strumenti con i nostri pulsanti per eseguire azioni personalizzate.<\/p>\n<\/li>\n<li>\n<p><strong><a href=\"https:\/\/awhitepixel.com\/blog\/how-to-create-custom-wordpress-gutenberg-blocks-part-7-creating-your-own-components\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Parte 7: Creazione di componenti personalizzati<\/a><\/strong><br \/>\nFinora in questa serie di tutorial abbiamo scritto tutto il codice all&#8217;interno<code>registerBlockType()<\/code>della<code>edit<\/code>funzione di. \u00c8 del tutto possibile, e spesso consigliato, assegnare invece la modifica a un componente separato. In questo modo possiamo utilizzare funzionalit\u00e0 come lo stato dei componenti e i metodi del ciclo di vita.<\/p>\n<\/li>\n<li>\n<p><strong><a href=\"https:\/\/wordpress.mediadoma.com\/it\/crea-un-blocco-gutenberg-personalizzato-parte-8-supporto-alla-traduzione\/\" title=\"Parte 8: Traduzione del tuo blocco\">Parte 8: Traduzione del tuo blocco<\/a><\/strong><br \/>\nIn questa parte ci concentreremo su come tradurre i testi ei valori nel nostro blocco. Usiamo WP-CLI per generare i file necessari in modo che Gutenberg sia in grado di caricare le nostre traduzioni quando si cambia la lingua di WordPress.<\/p>\n<\/li>\n<li>\n<p><strong><a href=\"https:\/\/wordpress.mediadoma.com\/it\/crea-un-blocco-gutenberg-personalizzato-parte-9-blocchi-dinamici-e-rendering-php\/\" title=\"Parte 9: Blocchi dinamici\">Parte 9: Blocchi dinamici<\/a><\/strong><br \/>\nFinora abbiamo reso l&#8217;output del blocco in Javascript. Tuttavia, con contenuti dinamici come post recenti o la visualizzazione di un post potrebbe essere necessario eseguire il rendering dell&#8217;output del blocco in PHP.<\/p>\n<\/li>\n<li>\n<p><strong><a href=\"https:\/\/wordpress.mediadoma.com\/it\/crea-un-blocco-gutenberg-personalizzato-parte-10-recupero-di-post-e-componenti-di-ordine-superiore\/\" title=\"Parte 10: Recupero di post e componenti di ordine superiore\">Parte 10: Recupero di post e componenti di ordine superiore<\/a><\/strong><br \/>\nNella parte finale impareremo come utilizzare i componenti di ordine superiore, e quindi come eseguire una query di post dall&#8217;interno dell&#8217;editor e forniremo un metodo per selezionare i post.<\/p>\n<\/li>\n<\/ul>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Fonte di registrazione:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/awhitepixel.com\" class=\"external external_icon\">awhitepixel.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Un tutorial completo e dettagliato in 10 passaggi per principianti in Gutenberg su come creare il tuo blocco personalizzato WordPress Gutenberg.<\/p>\n","protected":false},"author":1,"featured_media":153476,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[918,896,896,720,835,939,939,918,1110,804,804,814,814,835,720,844,844,865,865],"tags":[1168],"class_list":["post-233464","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-altro","category-codice","category-sviluppatore","category-guida-per-principianti","category-gutenberg-6","category-n-a","category-php-6","category-plugin-2","category-tutorial","category-wordpress-6","tag-affiai-it"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/posts\/233464","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/comments?post=233464"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/posts\/233464\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/media\/153476"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/media?parent=233464"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/categories?post=233464"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/tags?post=233464"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}