{"id":78327,"date":"2024-07-19T14:02:30","date_gmt":"2024-07-19T13:02:30","guid":{"rendered":"https:\/\/kinsta.com\/it\/?p=78327&#038;preview=true&#038;preview_id=78327"},"modified":"2024-07-22T12:13:11","modified_gmt":"2024-07-22T11:13:11","slug":"wordpress-htmx","status":"publish","type":"post","link":"https:\/\/kinsta.com\/it\/blog\/wordpress-htmx\/","title":{"rendered":"Potenziare WordPress con HTMX: come migliorare la piattaforma senza framework complessi"},"content":{"rendered":"<p>Sebbene esistano molti linguaggi accettabili per la scrivere codice, lo sviluppo web si sta concentrando su poche tecnologie affidabili. Questo \u00e8 particolarmente vero per WordPress.<\/p>\n<p>JavaScript \u00e8 ancora in fase di maturazione per la piattaforma, anche se le aspettative degli utenti per siti web dinamici e interattivi sono ancora molto alte. I framework possono colmare questo divario, ma la complessit\u00e0 di alcuni dei pi\u00f9 popolari pu\u00f2 ostacolare lo sviluppo. \u00c8 qui che entra in gioco HTMX. Questa libreria leggera promette di offrire usabilit\u00e0 e semplificazione nella creazione di esperienze web moderne.<\/p>\n<p>In questo articolo esploreremo come HTMX possa integrarsi nel vostro flusso di lavoro di sviluppo di WordPress. Imparerete a utilizzare questo metodo potente e accessibile per creare contenuti dinamici e interattivit\u00e0.<\/p>\n<p>Parleremo di cos&#8217;\u00e8 HTMX, del perch\u00e9 sta guadagnando terreno e di come si collega a WordPress. Inoltre, avrete una guida pratica sull&#8217;integrazione e l&#8217;utilizzo di HTMX con WordPress.<br \/>\n<div><\/div><kinsta-auto-toc heading=\"Table of Contents\" exclude=\"last\" list-style=\"arrow\" selector=\"h2\" count-number=\"-1\"><\/kinsta-auto-toc><\/p>\n<h2>Cos&#8217;\u00e8 HTMX<\/h2>\n<figure id=\"attachment_182716\" aria-describedby=\"caption-attachment-182716\" style=\"width: 1200px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-182716\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/07\/htmx-logo.png\" alt=\"Il logo HTMX, che consiste nel testo \"htmx\" in lettere bianche, con parentesi angolari ai lati che rappresentano i tag HTML. La \"x\" in \"htmx\" \u00e8 colorata di blu per enfasi. Sotto il testo principale \u00e8 presente una tagline che recita \"high power tools for HTML\". Il logo \u00e8 posizionato su uno sfondo scuro, che crea un contrasto evidente.\" width=\"1200\" height=\"295\"><figcaption id=\"caption-attachment-182716\" class=\"wp-caption-text\">Il logo di HTMX.<\/figcaption><\/figure>\n<p>In poche parole, <a href=\"https:\/\/htmx.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">HTMX<\/a> \u00e8 una libreria JavaScript che estende il <a href=\"https:\/\/kinsta.com\/it\/blog\/html\/\">linguaggio HTML (HyperText Markup Language)<\/a> standard senza dover scrivere <a href=\"https:\/\/kinsta.com\/it\/blog\/cosa-e-javascript\/\">JavaScript<\/a> vanilla o framework. Queste estensioni permettono di accedere anche ad altre tecnologie:<\/p>\n<ul>\n<li><strong>JavaScript asincrono e XML (AJAX).<\/strong> HTMX utilizza AJAX per effettuare richieste &#8220;asincrone&#8221; al server. Ci\u00f2 permette di effettuare aggiornamenti parziali della pagina senza dover ricaricare l&#8217;intera pagina.<\/li>\n<li><strong>WebSockets.<\/strong> \u00c8 possibile stabilire connessioni WebSocket e abilitare la comunicazione bidirezionale in tempo reale tra il browser e il server.<\/li>\n<li><strong>Eventi inviati dal server (SSE).<\/strong> Questa tecnologia permette al server di inviare dati al browser. Da l\u00ec, \u00e8 possibile usare HTMX per aggiornare la pagina in tempo reale.<\/li>\n<li><strong>Transizioni CSS.<\/strong> \u00c8 possibile integrare le <a href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/CSS\/CSS_transitions\/Using_CSS_transitions\" target=\"_blank\" rel=\"noopener noreferrer\">transizioni CSS<\/a>, che permettono di implementare aggiornamenti fluidi e animati al sito.<\/li>\n<\/ul>\n<p>In sostanza, HTMX mira a semplificare la creazione di applicazioni web dinamiche e interattive. La sua funzionalit\u00e0 chiave \u00e8 la possibilit\u00e0 di effettuare <a href=\"https:\/\/kinsta.com\/it\/blog\/richieste-http-javascript\/\">richieste HTTP<\/a> a <code>GET<\/code>, <code>POST<\/code>, <code>PUT<\/code>, <code>PATCH<\/code> e <code>DELETE<\/code> da elementi HTML. Ci\u00f2 significa che potrete elaborare aggiornamenti parziali della pagina in modo fluido e veloce come un&#8217;app mobile. Complessivamente, HTMX \u00e8 un potente toolkit che ti aiuta a creare un&#8217;esperienza web dinamica senza dover ricorrere a una marea di codice JavaScript.<\/p>\n<h2>Perch\u00e9 si parla di HTMX<\/h2>\n<p>Negli ultimi tempi c&#8217;\u00e8 stato un gran fermento intorno a HTMX e le ricerche di questa libreria sono esplose negli <a href=\"https:\/\/trends.google.com\/trends\/explore?date=today%205-y&#038;q=htmx&#038;hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">ultimi cinque anni<\/a>.<\/p>\n<figure id=\"attachment_182718\" aria-describedby=\"caption-attachment-182718\" style=\"width: 1200px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-182718\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/07\/htmx-trends.png\" alt=\"Un grafico a linee che mostra l'interesse nel tempo da luglio 2019 a gennaio 2024. Il grafico inizia con un livello basso e relativamente piatto fino alla met\u00e0 del 2022, poi mostra un forte aumento seguito da fluttuazioni a un livello pi\u00f9 alto fino al 2023 e all'inizio del 2024.\" width=\"1200\" height=\"376\"><figcaption id=\"caption-attachment-182718\" class=\"wp-caption-text\">Il grafico di Google Trends mostra l&#8217;aumento delle ricerche di HTMX in un periodo di cinque anni.<\/figcaption><\/figure>\n<p>Questo aumento di popolarit\u00e0 \u00e8 in parte dovuto alla visibilit\u00e0 sui social media e sui forum di sviluppatori. Tuttavia, HTMX presenta diversi fattori che lo rendono un&#8217;opzione di sviluppo interessante.<\/p>\n<ul>\n<li><strong>Semplicit\u00e0.<\/strong> Poich\u00e9 HTMX utilizza la familiare sintassi HTML per aiutare a creare applicazioni web dinamiche e interattive, \u00e8 semplicissimo da implementare e non presenta quasi nessuna delle complessit\u00e0 <a href=\"https:\/\/kinsta.com\/it\/blog\/librerie-javascript\/\">tipiche dei framework JavaScript<\/a>.<\/li>\n<li><strong>Prestazioni.<\/strong> Riducendo al minimo la quantit\u00e0 di JavaScript necessaria, HTMX \u00e8 in grado di garantire <a href=\"https:\/\/htmx.org\/essays\/a-real-world-react-to-htmx-port\/\" target=\"_blank\" rel=\"noopener noreferrer\">tempi di caricamento pi\u00f9 rapidi<\/a> e prestazioni migliori rispetto ad altri framework, soprattutto per i dispositivi mobili.<\/li>\n<li><strong>Rendering lato server.<\/strong> Il rendering lato server \u00e8 ottimo se si vogliono migliorare i tempi di caricamento iniziale delle pagine e l&#8217;<a href=\"https:\/\/kinsta.com\/it\/blog\/cosa-significa-seo\/\">ottimizzazione per i motori di ricerca (SEO)<\/a>. HTMX incorpora questo aspetto nel suo set di funzionalit\u00e0.<\/li>\n<li><strong>Miglioramento progressivo.<\/strong> Questo significa aggiungere interattivit\u00e0 ai siti web senza interrompere le funzionalit\u00e0 per coloro che disabilitano JavaScript. HTMX si basa su questi principi, per cui offre un vantaggio in termini di accessibilit\u00e0.<\/li>\n<\/ul>\n<p>Inoltre, a differenza di alcuni framework pi\u00f9 grandi, HTMX non richiede un processo di creazione o una catena di strumenti complessi. Grazie a una curva di apprendimento molto pi\u00f9 breve, l&#8217;integrazione della libreria nei propri progetti \u00e8 pi\u00f9 semplice.<\/p>\n<p>Questi vantaggi, a loro volta, portano a una maggiore discussione e adozione di HTMX. Se state cercando una soluzione pi\u00f9 semplice per creare esperienze web interattive, questa libreria potrebbe fare al caso vostro.<\/p>\n<h2>L&#8217;architettura di WordPress in relazione a JavaScript<\/h2>\n<p>La relazione tra WordPress \u00e8 JavaScript \u00e8 diventata sempre pi\u00f9 stretta a partire dallo <a href=\"https:\/\/wordpress.tv\/2015\/12\/07\/matt-mullenweg-state-of-the-word-2015\/\" target=\"_blank\" rel=\"noopener noreferrer\">State of the Word 2015<\/a>, quando Matt Mullenweg ha chiuso con la frase: &#8220;Studiate bene JavaScript&#8221;.<\/p>\n<p>Il percorso tipico degli sviluppatori di WordPress \u00e8 stato quello di ricercare la necessit\u00e0 di componenti interattivi e dinamici in un sito web. Nella maggior parte dei casi, <a href=\"https:\/\/kinsta.com\/it\/blog\/jquery\/\">jQuery<\/a> \u00e8 stato il framework JavaScript di riferimento per WordPress. Anche il popolarissimo <a href=\"https:\/\/news.harvard.edu\/gazette\/\" target=\"_blank\" rel=\"noopener noreferrer\">sito web Harvard Gazette<\/a> si basa su jQuery:<\/p>\n<figure id=\"attachment_182715\" aria-describedby=\"caption-attachment-182715\" style=\"width: 1200px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-182715\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/07\/harvard-gazette.png\" alt=\"La home page della Harvard Gazette, che mostra una grande immagine principale di una donna anziana e una barra laterale di articoli di attualit\u00e0, completi di immagini in primo piano.\" width=\"1200\" height=\"750\"><figcaption id=\"caption-attachment-182715\" class=\"wp-caption-text\">Il sito web della Harvard Gazette, che utilizza WordPress e jQuery per funzionare.<\/figcaption><\/figure>\n<p>Per questo motivo, <a href=\"https:\/\/kinsta.com\/it\/blog\/wp-enqueue-scripts\/\">WordPress richiede jQuery<\/a> per impostazione predefinita. Inoltre, molte funzioni principali, plugin e temi ne fanno largo uso. Questo approccio \u00e8 coerente e gode di un ampio supporto.<\/p>\n<figure id=\"attachment_182713\" aria-describedby=\"caption-attachment-182713\" style=\"width: 1200px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-182713\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/07\/block-editor.png\" alt=\"L'interfaccia dell'editor a blocchi di WordPress. Sul lato sinistro \u00e8 presente una barra laterale con varie opzioni di blocco come Paragrafo, Intestazione, Elenco e Tabella. L'area del contenuto principale mostra un blocco Tabella con i numeri di versione e le date di rilascio di WordPress, oltre alle opzioni per caricare i media o accedere alla libreria multimediale. L'interfaccia ha un design pulito e moderno con uno sfondo bianco.\" width=\"1200\" height=\"635\"><figcaption id=\"caption-attachment-182713\" class=\"wp-caption-text\">La barra laterale dei blocchi nell&#8217;editor a blocchi di WordPress.<\/figcaption><\/figure>\n<p>Tuttavia, con l&#8217;evoluzione dello sviluppo web, si \u00e8 evoluto anche l&#8217;approccio di WordPress a JavaScript. L&#8217;introduzione dell&#8217;<a href=\"https:\/\/kinsta.com\/it\/blog\/gutenberg-editor-wordpress\/\">Editor a blocchi<\/a> ha comportato un cambiamento verso l&#8217;utilizzo del <a href=\"https:\/\/kinsta.com\/it\/blog\/react-js\/\">framework React<\/a> per la creazione di interfacce utente, soprattutto all&#8217;interno della bacheca di WordPress.<\/p>\n<h3>I pro e i contro dell&#8217;attuale implementazione JavaScript di WordPress<\/h3>\n<p>Ci\u00f2 significa che c&#8217;\u00e8 un mix di framework con supporto nel codice principale di WordPress. Questo comporta alcuni vantaggi e svantaggi. Innanzitutto, gli aspetti positivi:<\/p>\n<ul>\n<li>C&#8217;\u00e8 un&#8217;ampia compatibilit\u00e0 sia con React che con jQuery. Per quanto riguarda il primo, si tratta di un framework potente e popolare. Per quanto riguarda il secondo, ha un&#8217;associazione di lunga data con WordPress.<\/li>\n<li>Molti sviluppatori conoscono questi framework perch\u00e9 React e jQuery sono molto popolari. Inoltre, \u00e8 possibile trovare pi\u00f9 risorse per imparare e risolvere i problemi di entrambi.<\/li>\n<li>WordPress offre un supporto integrato per AJAX attraverso <code>wp_ajax<\/code>.<\/li>\n<\/ul>\n<p>Tuttavia, questi vantaggi hanno una serie di aspetti negativi che li bilanciano:<\/p>\n<ul>\n<li><a href=\"https:\/\/make.wordpress.org\/themes\/2021\/10\/04\/the-performance-impact-of-using-jquery-in-wordpress-themes\/\" target=\"_blank\" rel=\"noopener noreferrer\">Affidarsi a jQuery<\/a> comporta una riduzione delle prestazioni del sito e per alcune applicazioni potrebbe non essere necessario il framework.<\/li>\n<li>Non tutte le caratteristiche e le funzionalit\u00e0 &#8220;moderne&#8221; di JavaScript sono implementate in WordPress per motivi di compatibilit\u00e0 e sicurezza. Questo potrebbe essere un problema se si desidera creare qualcosa di particolare.<\/li>\n<li>Con l&#8217;aggiunta di React ad alcune aree di WordPress (come gli editor dei blocchi e dei siti), la curva di apprendimento \u00e8 ancora pi\u00f9 lunga che in passato.<\/li>\n<\/ul>\n<p>L&#8217;attuale architettura JavaScript di WordPress \u00e8 adatta se avete le conoscenze di sviluppo dei framework consigliati o il tempo per impararli. In caso contrario, \u00e8 probabile che vogliate una soluzione che non abbia la complessit\u00e0 dei framework tipici, ma che fornisca comunque un&#8217;esperienza interattiva moderna sul front-end. \u00c8 qui che HTMX dovrebbe essere preso in considerazione.<\/p>\n<h2>Perch\u00e9 HTMX potrebbe essere pi\u00f9 adatto per alcune attivit\u00e0 di sviluppo di WordPress<\/h2>\n<p>HTMX offre alcuni vantaggi interessanti per quanto riguarda lo sviluppo di WordPress. Potrebbe rappresentare una via di mezzo tra la semplicit\u00e0 di jQuery e il moderno e performante React.<\/p>\n<p>Abbiamo gi\u00e0 parlato di alcuni di questi aspetti, ma riassumiamoli in breve:<\/p>\n<ul>\n<li>Il &#8220;peso&#8221; di HTMX pu\u00f2 avere un grande impatto sulle prestazioni rispetto a jQuery e React.<\/li>\n<li>La maggior parte degli sviluppatori di WordPress si considera pi\u00f9 esperta in HTML e PHP che in JavaScript. HTMX presenta una barriera d&#8217;ingresso pi\u00f9 semplice quando si lavora con esso, proprio come un linguaggio di markup.<\/li>\n<li>PHP e HTMX funzionano bene insieme anche grazie al rendering lato server, che potrebbe avere un impatto positivo sulle prestazioni.<\/li>\n<li>Nonostante si tratti di una libreria pi\u00f9 recente, sar\u00e0 possibile integrare HTMX con maggiore facilit\u00e0 e familiarizzare con il suo funzionamento. Questo giover\u00e0 al vostro flusso di lavoro.<\/li>\n<\/ul>\n<p>Per lo sviluppo di WordPress, ci piace anche la facilit\u00e0 con cui \u00e8 possibile prototipare nuove funzionalit\u00e0 per un sito. Potrete creare rapidamente nuove funzionalit\u00e0 complesse scrivendo codice all&#8217;interno dell&#8217;HTML esistente. Da l\u00ec, avete la flessibilit\u00e0 di aggiungere componenti React o un po&#8217; di jQuery, se necessario.<\/p>\n<p>Anche i principi di miglioramento progressivo di HTMX sono interessanti. L&#8217;accessibilit\u00e0 deve essere al centro della vostra strategia di progettazione e HTMX permette di creare interattivit\u00e0 senza interromperla per coloro che scelgono di disabilitare JavaScript nel browser.<\/p>\n<p>Infine, un vantaggio significativo di HTMX \u00e8 che non richiede alcuna configurazione personalizzata o speciale sul lato server. Potete utilizzare il vostro markup HTMX con qualsiasi host, incluso <a href=\"https:\/\/kinsta.com\/it\/\">Kinsta<\/a>.<\/p>\n<figure id=\"attachment_182719\" aria-describedby=\"caption-attachment-182719\" style=\"width: 1200px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-182719\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/07\/kinsta-website.png\" alt=\"La home page di Kinsta mostra il cruscotto MyKinsta. Include dettagli di base come la posizione (Belgio) e il nome del sito, dettagli sull'ambiente con indirizzi IP, informazioni sulla connessione SFTP\/SSH e due grafici. Un grafico mostra le visite al sito nel tempo, mentre l'altro mostra il tempo complessivo delle transazioni suddiviso per componenti tecnologici.\" width=\"1200\" height=\"704\"><figcaption id=\"caption-attachment-182719\" class=\"wp-caption-text\">La home page di Kinsta mostra la dashboard di MyKinsta.<\/figcaption><\/figure>\n<p>Grazie alle prestazioni di qualit\u00e0 dei nostri servizi di hosting, un sito che utilizza HTMX dovrebbe essere velocissimo. Questo avr\u00e0 un impatto sulle metriche SEO, sui numeri del traffico, sui tempi di sviluppo, sul flusso di risoluzione dei problemi e sull&#8217;intera catena di sviluppo.<\/p>\n<h2>Casi d&#8217;uso tipici di HTMX<\/h2>\n<p>Lo abbiamo accennato nell&#8217;ultima sezione, ma HTMX non sar\u00e0 una libreria da utilizzare come sostituto diretto di uno dei framework JavaScript pi\u00f9 conosciuti. Al contrario, lavorer\u00e0 al meglio accanto a ci\u00f2 che gi\u00e0 esiste, per aiutare a sostenere il carico di lavoro laddove necessario.<\/p>\n<p>Ci\u00f2 significa che utilizzerete HTMX per alcuni compiti per i quali jQuery e React potrebbero non essere ottimali. Prima di immergerci nell&#8217;implementazione di HTMX in WordPress, vediamo tre scenari comuni in cui la libreria potrebbe ottimizzare WordPress.<\/p>\n<h3>Ricarica parziale della pagina<\/h3>\n<p>Il grande caso d&#8217;uso di HTMX \u00e8 la possibilit\u00e0 di implementare il refresh parziale delle pagine con il minimo sforzo. Questo potrebbe essere un grosso problema per molti sviluppatori, soprattutto per i mockup e i prototipi veloci. Tuttavia, HTMX potrebbe fornire risultati di qualit\u00e0 per la produzione.<\/p>\n<p>Ad esempio, potrebbe aiutarvi a implementare la funzionalit\u00e0 di ricerca live sul vostro sito:<\/p>\n<figure id=\"attachment_182721\" aria-describedby=\"caption-attachment-182721\" style=\"width: 1200px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-182721\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/07\/live-search.gif\" alt=\"Una GIF di una finestra di dialogo di ricerca dinamica che utilizza HTMX con uno sfondo scuro. Viene visualizzata una tabella di contatti che mostra nomi, cognomi e indirizzi e-mail di pi\u00f9 persone. La tabella include 10 righe di informazioni di contatto di esempio.\" width=\"1200\" height=\"370\"><figcaption id=\"caption-attachment-182721\" class=\"wp-caption-text\">Un&#8217;interfaccia di ricerca dinamica in tempo reale con HTMX.<\/figcaption><\/figure>\n<p>La <a href=\"https:\/\/htmx.org\/examples\/\" target=\"_blank\" rel=\"noopener noreferrer\">libreria di esempi<\/a> HTMX approfondisce anche la metodologia per realizzare aggiornamenti in tempo reale su altre aree di contenuto all&#8217;interno della pagina. Questo <a href=\"https:\/\/htmx.org\/examples\/update-other-content\/\" target=\"_blank\" rel=\"noopener noreferrer\">esempio<\/a> utilizza un modulo di contatto con una tabella di contatti disponibili che si aggiorna quando l&#8217;utente invia una nuova aggiunta. HTMX offre una serie di modi eleganti per raggiungere questo obiettivo:<\/p>\n<pre><code class=\"language-html\">&lt;div id=\"table-and-form\"&gt;\n    &lt;h2&gt;Contacts&lt;\/h2&gt;\n    &lt;table class=\"table\"&gt;\n      &lt;thead&gt;\n        &lt;tr&gt;\n          &lt;th&gt;Name&lt;\/th&gt;\n          &lt;th&gt;Email&lt;\/th&gt;\n          &lt;th&gt;&lt;\/th&gt;\n        &lt;\/tr&gt;\n      &lt;\/thead&gt;\n      &lt;tbody id=\"contacts-table\"&gt;\n\n        ...\n\n      &lt;\/tbody&gt;\n    &lt;\/table&gt;\n\n    &lt;h2&gt;Add A Contact&lt;\/h2&gt;\n\n    &lt;form hx-post=\"\/contacts\" hx-target=\"#table-and-form\"&gt;\n      &lt;label&gt;\n        Name\n            &lt;input name=\"name\" type=\"text\"&gt;  \n      &lt;\/label&gt;\n\n      &lt;label&gt;\n        Email\n            &lt;input name=\"email\" type=\"email\"&gt;  \n      &lt;\/label&gt;\n    &lt;\/form&gt;\n&lt;\/div&gt;\n<\/code><\/pre>\n<p>Il modulo utilizza gli attributi <code>hx-post<\/code> e <code>hx-target<\/code> per espandere il suo obiettivo. Potreste anche utilizzare gli attributi HTMX per <a href=\"https:\/\/htmx.org\/examples\/file-upload-input\/\" target=\"_blank\" rel=\"noopener noreferrer\">preservare gli input del modulo<\/a> dopo un errore o un altro tentativo di validazione che utilizza il refresh:<\/p>\n<pre><code class=\"language-html\">&lt;input form=\"binaryForm\" type=\"file\" name=\"binaryFile\"&gt;\n\n&lt;form method=\"POST\" id=\"binaryForm\" enctype=\"multipart\/form-data\" hx-swap=\"outerHTML\" hx-target=\"#binaryForm\"&gt;\n    &lt;button type=\"submit\"&gt;Submit&lt;\/button&gt;\n&lt;\/form&gt;\n<\/code><\/pre>\n<p>In questo caso, posizionerete l&#8217;input per il file binario al di fuori dell&#8217;elemento primario del modulo e utilizzerete gli attributi <code>hx-swap<\/code> e <code>hx-target<\/code>.<\/p>\n<h3>Caricamento dinamico<\/h3>\n<p>Questo approccio all&#8217;aggiornamento e al caricamento dinamico pu\u00f2 essere adatto anche a compiti pi\u00f9 comuni. Prendiamo ad esempio lo <a href=\"https:\/\/htmx.org\/examples\/infinite-scroll\/\" target=\"_blank\" rel=\"noopener noreferrer\">scorrimento infinito<\/a>:<\/p>\n<pre><code class=\"language-html\">&lt;tr hx-get=\"\/contacts\/?page=2\"\n    hx-trigger=\"revealed\"\n    hx-swap=\"afterend\"&gt;\n  &lt;td&gt;Agent Smith&lt;\/td&gt;\n  &lt;td&gt;void29@null.org&lt;\/td&gt;\n  &lt;td&gt;55F49448C0&lt;\/td&gt;\n&lt;\/tr&gt;\n<\/code><\/pre>\n<p>L&#8217;attributo <code>hx-swap<\/code> funge da &#8220;ascoltatore&#8221; per l&#8217;attributo <code>hx-trigger<\/code>. Una volta che l&#8217;utente raggiunge la fine dell&#8217;elenco, HTMX caricher\u00e0 la seconda pagina di contatti in modo infinito.<\/p>\n<p>\u00c8 possibile applicare lo stesso metodo anche alla funzionalit\u00e0 di <a href=\"https:\/\/htmx.org\/examples\/lazy-load\/\" target=\"_blank\" rel=\"noopener noreferrer\">lazy loading<\/a>:<\/p>\n<figure id=\"attachment_182720\" aria-describedby=\"caption-attachment-182720\" style=\"width: 1200px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-182720\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/07\/lazy-loading-gif.gif\" alt=\"Una GIF di una pagina Web con sfondo scuro, che implementa il lazy loading. La GIF inizia con una piccola animazione di caricamento, da cui emerge un'immagine grafica che sfuma man mano che l'utente scorre la pagina.\" width=\"1200\" height=\"282\"><figcaption id=\"caption-attachment-182720\" class=\"wp-caption-text\">Usare HTMX per implementare il caricamento pigro.<\/figcaption><\/figure>\n<p>Anche in questo caso si utilizzano gli attributi <code>hx-get<\/code> e <code>hx-trigger<\/code> per avviare una transizione htmx per caricare il grafico con una dissolvenza lenta.<\/p>\n<h3>Presentazione dei dati<\/h3>\n<p>Non deve sorprendere che HTMX sia eccellente per presentare informazioni sullo schermo utilizzando elementi interattivi o comunque dinamici.<\/p>\n<p>Ad esempio, \u00e8 possibile implementare tutti i tipi di filtraggio dei contenuti, come le <a href=\"https:\/\/htmx.org\/examples\/value-select\/\" target=\"_blank\" rel=\"noopener noreferrer\">selezioni di valori<\/a>. In questo caso, le opzioni di un elenco si popolano in base a quelle di un altro:<\/p>\n<figure id=\"attachment_182723\" aria-describedby=\"caption-attachment-182723\" style=\"width: 1200px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-182723\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/07\/value-select-gif.gif\" alt=\"GIF di un'interfaccia utente che mostra un menu a discesa per la selezione di una marca e di un modello di auto. Il titolo dice \" Pick A Make\/Model\" e le opzioni visibili sono Audi (che \u00e8 selezionata), Toyota e BMW. L'utente scorre ogni marca, modificando le opzioni del menu a discesa Modello.\" width=\"1200\" height=\"374\"><figcaption id=\"caption-attachment-182723\" class=\"wp-caption-text\">Utilizzo di HTMX per assegnare selezioni di valore agli elementi del sito.<\/figcaption><\/figure>\n<p>Potreste anche creare <a href=\"https:\/\/htmx.org\/examples\/modal-bootstrap\/\" target=\"_blank\" rel=\"noopener noreferrer\">finestre di dialogo modali<\/a> o schede di interfaccia con la stessa facilit\u00e0. Questo mostra anche come HTMX lavora insieme ad altre librerie e framework, come Bootstrap:<\/p>\n<figure id=\"attachment_182722\" aria-describedby=\"caption-attachment-182722\" style=\"width: 1200px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-182722\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/07\/modal-box-gif.gif\" alt=\"Una GIF di una sezione di una pagina Web a tema leggero intitolata \"Demo\" con un'icona di collegamento e un pulsante intitolato \"OPEN MODAL\" in lettere maiuscole. Una volta che l'utente fa clic sul pulsante, si apre una casella modale utilizzando HTMX.\" width=\"1200\" height=\"250\"><figcaption id=\"caption-attachment-182722\" class=\"wp-caption-text\">Aprire una finestra di dialogo modale utilizzando HTMX.<\/figcaption><\/figure>\n<p>Questa flessibilit\u00e0 si estende anche all&#8217;implementazione delle schede. Ci sono due modi per farlo: combinando <a href=\"https:\/\/htmx.org\/examples\/tabs-javascript\/\" target=\"_blank\" rel=\"noopener noreferrer\">JavaScript vanilla<\/a> e HTMX o utilizzando i principi di <a href=\"https:\/\/htmx.org\/examples\/tabs-hateoas\/\" target=\"_blank\" rel=\"noopener noreferrer\">Hypertext As The Engine Of Application State (HATEOAS)<\/a>:<\/p>\n<figure id=\"attachment_182714\" aria-describedby=\"caption-attachment-182714\" style=\"width: 1200px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-182714\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/07\/content-tabs.gif\" width=\"1200\" height=\"208\"><figcaption id=\"caption-attachment-182714\" class=\"wp-caption-text\">Una GIF di un&#8217;interfaccia a schede che utilizza HTMX.<\/figcaption><\/figure>\n<p>Ci sono molti altri modi per utilizzare HTMX per gli elementi di un sito front-end con il suo nucleo sul lato server. Nella prossima sezione vi forniremo gli strumenti per creare la vostra visione personale all&#8217;interno di WordPress.<\/p>\n<h2>Come integrare HTMX in WordPress<\/h2>\n<p>Se volete aggiungere HTMX al vostro sito web WordPress, la buona notizia \u00e8 che si tratta di un&#8217;operazione rapida e indolore. Di seguito vedremo un approccio in tre fasi per questo lavoro. Non tratteremo l&#8217;intero processo e il codice per sviluppare le funzionalit\u00e0 di WordPress, ma ci soffermeremo su tutti i punti chiave che dovrete seguire.<\/p>\n<p>Inoltre, gran parte del processo, soprattutto la prima fase, dovrebbe essere tipica se avete gi\u00e0 sviluppato per WordPress.<\/p>\n<h3>1. Eseguire l&#8217;enqueue HTMX nel codice PHP<\/h3>\n<p>Come per tutti gli script aggiuntivi per WordPress, dovete includere la libreria HTMX nel codice del vostro tema o plugin.<\/p>\n<pre><code class=\"language-php\">wp_enqueue_script('htmx-script', 'https:\/\/unpkg.com\/htmx.org@2.0.0\/dist\/htmx.min.js', array(), '2.0.0', true);\n<\/code><\/pre>\n<aside role=\"note\" class=\"wp-block-kinsta-notice is-style-info\">\n            <h3>Info<\/h3>\n        <p>La guida rapida di HTMX richiama la libreria da un Content Delivery Network (CDN). Dovete decidere se questa \u00e8 una buona idea per il vostro progetto.<\/p>\n<\/aside>\n\n<figure id=\"attachment_182717\" aria-describedby=\"caption-attachment-182717\" style=\"width: 1200px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-182717\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/07\/htmx-quick-start.png\" alt=\"A code snippet from the HTMX quick start guide. It displays a single line of HTML code that includes a script tag to load the HTMX library from an external source. The code is highlighted in orange to draw attention to it. Below the script tag is an example of an HTML button element using HTMX attributes. The code is displayed on a dark background with syntax highlighting.\" width=\"1200\" height=\"257\"><figcaption id=\"caption-attachment-182717\" class=\"wp-caption-text\">Assicuratevi di utilizzare l&#8217;ultima versione di HTMX e tenete presente che la guida rapida richiama la libreria da un CDN, il che potrebbe non essere adatto al vostro progetto.<\/figcaption><\/figure>\n<p>Tuttavia, un&#8217;idea oggettivamente buona \u00e8 quella di racchiudere questo enqueue all&#8217;interno di una funzione che inserisca e <a href=\"https:\/\/kinsta.com\/it\/blog\/block-pattern-wordpress\/\">registri anche un blocco<\/a> all&#8217;interno di WordPress. Naturalmente, questo dipende dal fatto che il vostro progetto richieda di lavorare con l&#8217;editor a blocchi.<\/p>\n<p>La parte finale dell&#8217;enqueue HTMX consiste nell&#8217;invocare l&#8217;intera funzione utilizzando <code>add_action<\/code>. Dovrai tornare a utilizzare gli <a href=\"https:\/\/kinsta.com\/it\/blog\/hook-wordpress\/\">hook e i filtri<\/a> pi\u00f9 avanti, quando lavorerete con le richieste AJAX.<\/p>\n<h3>2. Aggiungere elementi HTMX ai file del template di WordPress<\/h3>\n<p>Dai nostri casi d&#8217;uso, vedrete che HTMX richiede il markup appropriato all&#8217;interno dell&#8217;HTML per gestire e attivare le richieste AJAX. La libreria utilizza gli <a href=\"https:\/\/kinsta.com\/it\/blog\/richieste-http-javascript\/\">attributi<\/a> tipici delle <a href=\"https:\/\/kinsta.com\/it\/blog\/richieste-http-javascript\/\">richieste HTTP<\/a> per creare i propri &#8211; <code>GET<\/code>, <code>POST<\/code>, <code>PUSH<\/code>, <code>PATCH<\/code> e <code>DELETE<\/code> &#8211; con un prefisso <code>hx-<\/code>:<\/p>\n<pre><code class=\"language-html\">hx-post\n<\/code><\/pre>\n<p>Le richieste AJAX di WordPress utilizzano l&#8217;endpoint <strong>admin-ajax.php<\/strong>, che dovete ricordare! I tipici elementi che creerete con HTMX effettueranno una richiesta AJAX, la invieranno a un elemento di destinazione e potenzialmente elaboreranno un trigger.<\/p>\n<p>L&#8217;attributo <code>hx-target<\/code> permette di specificare dove andr\u00e0 il risultato della richiesta. Potrebbe essere un&#8217;altra pagina, uno specifico <code>div<\/code> o qualcos&#8217;altro. Pensate a questo come ai tag di ancoraggio dell&#8217;HTML:<\/p>\n<pre><code class=\"language-html\">&lt;input type=\"search\"\n        name=\"search\" placeholder=\"Search...\"\n        hx-post=\"&lt;?php echo admin_url('admin-ajax.php'); ?&gt;?action=live_search\"\n        hx-target=\"#search-results\"\n        \u2026<\/code><\/pre>\n<p>HTMX utilizza &#8220;naturale&#8221; e &#8220;non naturale&#8221; per definire un&#8217;azione. Ad esempio, <code>submit<\/code> attiver\u00e0 un modulo e questo \u00e8 un evento naturale. Per gli eventi di elementi non naturali, utilizzerete l&#8217;attributo <code>hx-trigger<\/code>. <a href=\"https:\/\/htmx.org\/docs\/#triggers\" target=\"_blank\" rel=\"noopener noreferrer\">Questi trigger<\/a> possono essere una delle parti pi\u00f9 complesse di HTMX, ma sono comunque semplici da capire.<\/p>\n<p>Ad esempio, si pu\u00f2 utilizzare un trigger per monitorare un campo di input:<\/p>\n<pre><code class=\"language-html\">\u2026\nhx-post=\"&lt;?php echo admin_url('admin-ajax.php'); ?&gt;?action=live_search\"\nhx-target=\"#search-results\"\nhx-trigger=\"input changed delay:500ms, search\"\nhx-indicator=\".htmx-indicator\"&gt;\n\u2026<\/code><\/pre>\n<p>La modifica di un campo di input innescher\u00e0 un aggiornamento in un altro punto della pagina. Un altro esempio \u00e8 che potreste voler attivare un evento una sola volta in base a un&#8217;azione non tipica, come l&#8217;inserimento del cursore in una parte dello schermo:<\/p>\n<pre><code class=\"language-html\">&lt;div hx-post=\"\/mouse_entered\" hx-trigger=\"mouseenter once\"&gt;\n    [Here Mouse, Mouse!]\n&lt;\/div&gt;\n<\/code><\/pre>\n<p>Questo potrebbe ispirarvi a creare applicazioni come i <a href=\"https:\/\/kinsta.com\/it\/blog\/popup-elementor\/\">pop-up<\/a> o altri box modali. Tuttavia, prima di poterli vedere in azione, dovete elaborare la richiesta AJAX.<\/p>\n<h3>3. Gestire le richieste AJAX<\/h3>\n<p>Infine, dovete gestire la richiesta AJAX sul lato server. Per WordPress, \u00e8 una pratica vantaggiosa memorizzare tutto questo in un file separato. Potete chiamarlo come volete, ma <strong>ajax-functions.php<\/strong> \u00e8 sufficientemente descrittivo e chiaro.<\/p>\n<p>Questa parte dell&#8217;utilizzo di HTMX vi richieder\u00e0 di <a href=\"https:\/\/kinsta.com\/it\/blog\/tutorial-php\/\">mettere a frutto le vostre conoscenze di PHP<\/a>. L&#8217;elaborazione delle richieste AJAX sar\u00e0 unica per il vostro progetto specifico. \u00c8 il punto in cui collegate gli attributi che avete nominato nei vostri file modello all&#8217;elaborazione sul lato server.<\/p>\n<p>Ovviamente, lo fareste in ogni caso, indipendentemente dal fatto che scriviate codice con HTMX, JavaScript puro o qualcos&#8217;altro. Ecco un po&#8217; di pseudocodice per mostrare come potrebbe essere:<\/p>\n<pre><code class=\"language-html\">function my_search_action() {\n    $search_term = sanitize_text_field( $_POST['search'] );\n\n    $args = array(\n        's' =&gt; $search_term,\n        'post_type' =&gt; 'post',\n        'posts_per_page' =&gt; 5\n    );\n\n    $query = new WP_Query( $args );\n\n    if ( $query-&gt;have_posts() ) :\n        while ( $query-&gt;have_posts() ) : $query-&gt;the_post();\n            echo '&lt;h2&gt;' . get_the_title() . '&lt;\/h2&gt;';\n            echo '&lt;p&gt;' . get_the_excerpt() . '&lt;\/p&gt;';\n        endwhile;\n    else:\n        echo 'No results found.';\n    endif;\n\n    wp_reset_postdata();\n\n    wp_die();\n}\n<\/code><\/pre>\n<p>Tuttavia, questo potrebbe non essere rilevante o non assomigliare alla gestione AJAX del vostro progetto. Le stesse competenze che utilizzerete per <a href=\"https:\/\/kinsta.com\/it\/blog\/block-template-wordpress\/\">costruire i template dei blocchi<\/a>, <a href=\"https:\/\/kinsta.com\/it\/blog\/plugin-wordpress-estensibile\/\">estendere i plugin<\/a> con PHP e altro ancora, vi aiuteranno a creare i vostri gestori di richieste AJAX e le vostre funzioni.<\/p>\n<h2>Suggerimenti per l&#8217;utilizzo di HTMX con WordPress<\/h2>\n<p>Sebbene l&#8217;utilizzo di HTMX sia uno dei modi pi\u00f9 semplici per implementare contenuti dinamici con WordPress, richiede comunque un&#8217;attenta gestione e considerazione. Ci sono anche alcuni modi per migliorare la vostra esperienza di sviluppo.<\/p>\n<p>Il primo consiglio riguarda la &#8220;maturit\u00e0&#8221; di HTMX. Al momento \u00e8 una libreria nuova per la piattaforma, quindi non ha lo stesso livello di integrazione di jQuery, per esempio.<\/p>\n<p>HTMX ha un&#8217;ottima documentazione, ma non ci sono molte risorse per combinare la libreria con WordPress. Ci\u00f2 significa che dovrete impegnarvi a fondo per far funzionare le cose senza la rete di sicurezza di una comunit\u00e0 gi\u00e0 pronta.<\/p>\n<p>Uno dei consigli pi\u00f9 importanti che possiamo darvi \u00e8 quello di creare le vostre funzionalit\u00e0 <a href=\"https:\/\/kinsta.com\/blog\/publish-plugin-wordpress-plugin-directory\/\">in un plugin<\/a> per il momento. In questo modo potrete avere una struttura e una gestione pi\u00f9 semplice mentre verificate la presenza di bug e altri errori di integrazione.<\/p>\n<p>A proposito di WordPress, cercate di capire come il file <strong>admin-ajax.php<\/strong> si collega al resto dell&#8217;ecosistema, poich\u00e9 molte interazioni lo coinvolgeranno.<\/p>\n<figure id=\"attachment_182712\" aria-describedby=\"caption-attachment-182712\" style=\"width: 1200px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-182712\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/07\/admin-ajax.png\" alt=\"Una finestra dell'editor di codice che visualizza il codice PHP di un file WordPress admin-ajax.php. Il codice include commenti e funzioni per il caricamento del codice bootstrap di WordPress, la gestione delle richieste cross-domain, l'impostazione delle intestazioni e il caricamento delle API di amministrazione di WordPress e dei gestori Ajax. L'editor ha un tema scuro con evidenziazione della sintassi in azzurro.\" width=\"1200\" height=\"814\"><figcaption id=\"caption-attachment-182712\" class=\"wp-caption-text\">Il file admin-ajax.php in un editor di codice.<\/figcaption><\/figure>\n<p>Sebbene HTMX offra ottime prestazioni, dovete assicurarvi che l&#8217;<a href=\"https:\/\/kinsta.com\/it\/blog\/admin-ajax-php\/\">utilizzo di AJAX<\/a> sia sufficientemente basso da non influire sulla velocit\u00e0 di caricamento del vostro sito o sulla SEO. Anche il debug delle richieste dovrebbe essere un punto fermo del vostro flusso di lavoro, in particolare le metriche <a href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/API\/XMLHttpRequest\" target=\"_blank\" rel=\"noopener noreferrer\">XMLHttpRequest (XHR)<\/a> all&#8217;interno degli strumenti di sviluppo del browser.<\/p>\n<figure id=\"attachment_182724\" aria-describedby=\"caption-attachment-182724\" style=\"width: 1200px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-182724\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/07\/xhr-metrics.png\" alt=\"The Brave browser\u2019s DevTools interface, showing the WordPress website at the top. This includes text describing it as \"The open source publishing platform of choice for millions of websites worldwide\" and a video thumbnail about WordCamp Europe 2024. The developer console shows XHR requests for the site.\" width=\"1200\" height=\"630\"><figcaption id=\"caption-attachment-182724\" class=\"wp-caption-text\">Le richieste Fetch\/XHR del sito WordPress.org.<\/figcaption><\/figure>\n<p>Si tratta del registro dei dati di richiesta e risposta, che utilizzerete per eseguire il debug delle richieste AJAX e delle chiamate API (Application Programming Interface). Dato che HTMX non ha ancora una stretta integrazione con WordPress, il debugging potrebbe essere un compito pi\u00f9 pertinente rispetto a quello che sarebbe con altri framework JavaScript.<\/p>\n<h2>Riepilogo<\/h2>\n<p>Per gli sviluppatori di WordPress che desiderano creare elementi dinamici e interattivi per il sito senza che complessi framework JavaScript si prendano tutto il vostro tempo, <a href=\"https:\/\/htmx.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">HTMX<\/a> rappresenta un&#8217;interessante opportunit\u00e0. Permette di costruire all&#8217;interno dell&#8217;HTML e offre un&#8217;alternativa snella a jQuery e React, pur garantendo un&#8217;interattivit\u00e0 moderna.<\/p>\n<p>In pratica, utilizzerete HTMX insieme agli altri framework, perch\u00e9 non \u00e8 adatto a tutti i compiti. Tuttavia, \u00e8 semplice da implementare e offre un modo rapido per prototipare gli elementi interattivi del vostro sito &#8211; e potrebbe anche diventare la vostra versione di produzione.<\/p>\n<p>HTMX e WordPress vi sembrano un&#8217;accoppiata allettante? Fateci sapere cosa ne pensate nella sezione commenti qui sotto!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Sebbene esistano molti linguaggi accettabili per la scrivere codice, lo sviluppo web si sta concentrando su poche tecnologie affidabili. Questo \u00e8 particolarmente vero per WordPress. JavaScript &#8230;<\/p>\n","protected":false},"author":199,"featured_media":78328,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_kinsta_gated_content":false,"_kinsta_gated_content_redirect":"","footnotes":""},"tags":[],"topic":[25918,25873],"class_list":["post-78327","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","topic-framework-javascript","topic-sviluppo-wordpress"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v24.6 (Yoast SEO v24.6) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Potenziare WordPress con HTMX - Kinsta\u00ae<\/title>\n<meta name=\"description\" content=\"I framework JavaScript possono essere complessi, il che non \u00e8 l&#039;ideale per il web design. Scopri come la libreria HTMX pu\u00f2 aiutarti a implementare JavaScript!\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/kinsta.com\/it\/blog\/wordpress-htmx\/\" \/>\n<meta property=\"og:locale\" content=\"it_IT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Potenziare WordPress con HTMX: come migliorare la piattaforma senza framework complessi\" \/>\n<meta property=\"og:description\" content=\"I framework JavaScript possono essere complessi, il che non \u00e8 l&#039;ideale per il web design. Scopri come la libreria HTMX pu\u00f2 aiutarti a implementare JavaScript!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kinsta.com\/it\/blog\/wordpress-htmx\/\" \/>\n<meta property=\"og:site_name\" content=\"Kinsta\u00ae\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/kinstaitalia\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-07-19T13:02:30+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-07-22T11:13:11+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2024\/07\/supercharging-wordpress-with-htmx.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1460\" \/>\n\t<meta property=\"og:image:height\" content=\"730\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Jeremy Holcombe\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:description\" content=\"I framework JavaScript possono essere complessi, il che non \u00e8 l&#039;ideale per il web design. Scopri come la libreria HTMX pu\u00f2 aiutarti a implementare JavaScript!\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2024\/07\/supercharging-wordpress-with-htmx-1024x512.jpg\" \/>\n<meta name=\"twitter:creator\" content=\"@Kinsta_IT\" \/>\n<meta name=\"twitter:site\" content=\"@Kinsta_IT\" \/>\n<meta name=\"twitter:label1\" content=\"Scritto da\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jeremy Holcombe\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tempo di lettura stimato\" \/>\n\t<meta name=\"twitter:data2\" content=\"20 minuti\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/kinsta.com\/it\/blog\/wordpress-htmx\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/kinsta.com\/it\/blog\/wordpress-htmx\/\"},\"author\":{\"name\":\"Jeremy Holcombe\",\"@id\":\"https:\/\/kinsta.com\/it\/#\/schema\/person\/4eee42881d7b5a73ebb4f58dd5223b21\"},\"headline\":\"Potenziare WordPress con HTMX: come migliorare la piattaforma senza framework complessi\",\"datePublished\":\"2024-07-19T13:02:30+00:00\",\"dateModified\":\"2024-07-22T11:13:11+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/kinsta.com\/it\/blog\/wordpress-htmx\/\"},\"wordCount\":3113,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/kinsta.com\/it\/#organization\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/it\/blog\/wordpress-htmx\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2024\/07\/supercharging-wordpress-with-htmx.jpg\",\"inLanguage\":\"it-IT\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/kinsta.com\/it\/blog\/wordpress-htmx\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/kinsta.com\/it\/blog\/wordpress-htmx\/\",\"url\":\"https:\/\/kinsta.com\/it\/blog\/wordpress-htmx\/\",\"name\":\"Potenziare WordPress con HTMX - Kinsta\u00ae\",\"isPartOf\":{\"@id\":\"https:\/\/kinsta.com\/it\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/kinsta.com\/it\/blog\/wordpress-htmx\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/it\/blog\/wordpress-htmx\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2024\/07\/supercharging-wordpress-with-htmx.jpg\",\"datePublished\":\"2024-07-19T13:02:30+00:00\",\"dateModified\":\"2024-07-22T11:13:11+00:00\",\"description\":\"I framework JavaScript possono essere complessi, il che non \u00e8 l'ideale per il web design. Scopri come la libreria HTMX pu\u00f2 aiutarti a implementare JavaScript!\",\"breadcrumb\":{\"@id\":\"https:\/\/kinsta.com\/it\/blog\/wordpress-htmx\/#breadcrumb\"},\"inLanguage\":\"it-IT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/kinsta.com\/it\/blog\/wordpress-htmx\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\/\/kinsta.com\/it\/blog\/wordpress-htmx\/#primaryimage\",\"url\":\"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2024\/07\/supercharging-wordpress-with-htmx.jpg\",\"contentUrl\":\"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2024\/07\/supercharging-wordpress-with-htmx.jpg\",\"width\":1460,\"height\":730},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/kinsta.com\/it\/blog\/wordpress-htmx\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/kinsta.com\/it\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Framework JavaScript\",\"item\":\"https:\/\/kinsta.com\/it\/argomenti\/framework-javascript\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Potenziare WordPress con HTMX: come migliorare la piattaforma senza framework complessi\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/kinsta.com\/it\/#website\",\"url\":\"https:\/\/kinsta.com\/it\/\",\"name\":\"Kinsta\u00ae\",\"description\":\"Soluzioni di hosting premium, veloci e sicure\",\"publisher\":{\"@id\":\"https:\/\/kinsta.com\/it\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/kinsta.com\/it\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"it-IT\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/kinsta.com\/it\/#organization\",\"name\":\"Kinsta\",\"url\":\"https:\/\/kinsta.com\/it\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\/\/kinsta.com\/it\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/12\/kinsta-logo.jpeg\",\"contentUrl\":\"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/12\/kinsta-logo.jpeg\",\"width\":500,\"height\":500,\"caption\":\"Kinsta\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/it\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/kinstaitalia\/\",\"https:\/\/x.com\/Kinsta_IT\",\"https:\/\/www.instagram.com\/kinstahosting\/\",\"https:\/\/www.linkedin.com\/company\/kinsta\/\",\"https:\/\/www.pinterest.com\/kinstahosting\/\",\"https:\/\/www.youtube.com\/c\/Kinsta\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/kinsta.com\/it\/#\/schema\/person\/4eee42881d7b5a73ebb4f58dd5223b21\",\"name\":\"Jeremy Holcombe\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\/\/kinsta.com\/it\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/0e17001f3bb37dbbe54fceef9bb547fa?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/0e17001f3bb37dbbe54fceef9bb547fa?s=96&d=mm&r=g\",\"caption\":\"Jeremy Holcombe\"},\"description\":\"Senior Editor at Kinsta, WordPress Web Developer, and Content Writer. Outside of all things WordPress, I enjoy the beach, golf, and movies. I also have tall people problems.\",\"sameAs\":[\"https:\/\/www.linkedin.com\/in\/jeremyholcombe\/\"],\"url\":\"https:\/\/kinsta.com\/it\/blog\/author\/jeremyholcombe\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Potenziare WordPress con HTMX - Kinsta\u00ae","description":"I framework JavaScript possono essere complessi, il che non \u00e8 l'ideale per il web design. Scopri come la libreria HTMX pu\u00f2 aiutarti a implementare JavaScript!","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/kinsta.com\/it\/blog\/wordpress-htmx\/","og_locale":"it_IT","og_type":"article","og_title":"Potenziare WordPress con HTMX: come migliorare la piattaforma senza framework complessi","og_description":"I framework JavaScript possono essere complessi, il che non \u00e8 l'ideale per il web design. Scopri come la libreria HTMX pu\u00f2 aiutarti a implementare JavaScript!","og_url":"https:\/\/kinsta.com\/it\/blog\/wordpress-htmx\/","og_site_name":"Kinsta\u00ae","article_publisher":"https:\/\/www.facebook.com\/kinstaitalia\/","article_published_time":"2024-07-19T13:02:30+00:00","article_modified_time":"2024-07-22T11:13:11+00:00","og_image":[{"width":1460,"height":730,"url":"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2024\/07\/supercharging-wordpress-with-htmx.jpg","type":"image\/jpeg"}],"author":"Jeremy Holcombe","twitter_card":"summary_large_image","twitter_description":"I framework JavaScript possono essere complessi, il che non \u00e8 l'ideale per il web design. Scopri come la libreria HTMX pu\u00f2 aiutarti a implementare JavaScript!","twitter_image":"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2024\/07\/supercharging-wordpress-with-htmx-1024x512.jpg","twitter_creator":"@Kinsta_IT","twitter_site":"@Kinsta_IT","twitter_misc":{"Scritto da":"Jeremy Holcombe","Tempo di lettura stimato":"20 minuti"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kinsta.com\/it\/blog\/wordpress-htmx\/#article","isPartOf":{"@id":"https:\/\/kinsta.com\/it\/blog\/wordpress-htmx\/"},"author":{"name":"Jeremy Holcombe","@id":"https:\/\/kinsta.com\/it\/#\/schema\/person\/4eee42881d7b5a73ebb4f58dd5223b21"},"headline":"Potenziare WordPress con HTMX: come migliorare la piattaforma senza framework complessi","datePublished":"2024-07-19T13:02:30+00:00","dateModified":"2024-07-22T11:13:11+00:00","mainEntityOfPage":{"@id":"https:\/\/kinsta.com\/it\/blog\/wordpress-htmx\/"},"wordCount":3113,"commentCount":0,"publisher":{"@id":"https:\/\/kinsta.com\/it\/#organization"},"image":{"@id":"https:\/\/kinsta.com\/it\/blog\/wordpress-htmx\/#primaryimage"},"thumbnailUrl":"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2024\/07\/supercharging-wordpress-with-htmx.jpg","inLanguage":"it-IT","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/kinsta.com\/it\/blog\/wordpress-htmx\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/kinsta.com\/it\/blog\/wordpress-htmx\/","url":"https:\/\/kinsta.com\/it\/blog\/wordpress-htmx\/","name":"Potenziare WordPress con HTMX - Kinsta\u00ae","isPartOf":{"@id":"https:\/\/kinsta.com\/it\/#website"},"primaryImageOfPage":{"@id":"https:\/\/kinsta.com\/it\/blog\/wordpress-htmx\/#primaryimage"},"image":{"@id":"https:\/\/kinsta.com\/it\/blog\/wordpress-htmx\/#primaryimage"},"thumbnailUrl":"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2024\/07\/supercharging-wordpress-with-htmx.jpg","datePublished":"2024-07-19T13:02:30+00:00","dateModified":"2024-07-22T11:13:11+00:00","description":"I framework JavaScript possono essere complessi, il che non \u00e8 l'ideale per il web design. Scopri come la libreria HTMX pu\u00f2 aiutarti a implementare JavaScript!","breadcrumb":{"@id":"https:\/\/kinsta.com\/it\/blog\/wordpress-htmx\/#breadcrumb"},"inLanguage":"it-IT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kinsta.com\/it\/blog\/wordpress-htmx\/"]}]},{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/kinsta.com\/it\/blog\/wordpress-htmx\/#primaryimage","url":"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2024\/07\/supercharging-wordpress-with-htmx.jpg","contentUrl":"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2024\/07\/supercharging-wordpress-with-htmx.jpg","width":1460,"height":730},{"@type":"BreadcrumbList","@id":"https:\/\/kinsta.com\/it\/blog\/wordpress-htmx\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/kinsta.com\/it\/"},{"@type":"ListItem","position":2,"name":"Framework JavaScript","item":"https:\/\/kinsta.com\/it\/argomenti\/framework-javascript\/"},{"@type":"ListItem","position":3,"name":"Potenziare WordPress con HTMX: come migliorare la piattaforma senza framework complessi"}]},{"@type":"WebSite","@id":"https:\/\/kinsta.com\/it\/#website","url":"https:\/\/kinsta.com\/it\/","name":"Kinsta\u00ae","description":"Soluzioni di hosting premium, veloci e sicure","publisher":{"@id":"https:\/\/kinsta.com\/it\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/kinsta.com\/it\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"it-IT"},{"@type":"Organization","@id":"https:\/\/kinsta.com\/it\/#organization","name":"Kinsta","url":"https:\/\/kinsta.com\/it\/","logo":{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/kinsta.com\/it\/#\/schema\/logo\/image\/","url":"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/12\/kinsta-logo.jpeg","contentUrl":"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/12\/kinsta-logo.jpeg","width":500,"height":500,"caption":"Kinsta"},"image":{"@id":"https:\/\/kinsta.com\/it\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/kinstaitalia\/","https:\/\/x.com\/Kinsta_IT","https:\/\/www.instagram.com\/kinstahosting\/","https:\/\/www.linkedin.com\/company\/kinsta\/","https:\/\/www.pinterest.com\/kinstahosting\/","https:\/\/www.youtube.com\/c\/Kinsta"]},{"@type":"Person","@id":"https:\/\/kinsta.com\/it\/#\/schema\/person\/4eee42881d7b5a73ebb4f58dd5223b21","name":"Jeremy Holcombe","image":{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/kinsta.com\/it\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/0e17001f3bb37dbbe54fceef9bb547fa?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/0e17001f3bb37dbbe54fceef9bb547fa?s=96&d=mm&r=g","caption":"Jeremy Holcombe"},"description":"Senior Editor at Kinsta, WordPress Web Developer, and Content Writer. Outside of all things WordPress, I enjoy the beach, golf, and movies. I also have tall people problems.","sameAs":["https:\/\/www.linkedin.com\/in\/jeremyholcombe\/"],"url":"https:\/\/kinsta.com\/it\/blog\/author\/jeremyholcombe\/"}]}},"acf":[],"_links":{"self":[{"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/posts\/78327","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/users\/199"}],"replies":[{"embeddable":true,"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/comments?post=78327"}],"version-history":[{"count":6,"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/posts\/78327\/revisions"}],"predecessor-version":[{"id":78348,"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/posts\/78327\/revisions\/78348"}],"alternate":[{"embeddable":true,"hreflang":"en","title":"English","href":"https:\/\/kinsta.com\/it\/wp-json\/kinsta\/v1\/posts\/78327\/translations\/en"},{"embeddable":true,"hreflang":"it","title":"Italian","href":"https:\/\/kinsta.com\/it\/wp-json\/kinsta\/v1\/posts\/78327\/translations\/it"},{"embeddable":true,"hreflang":"pt","title":"Portuguese","href":"https:\/\/kinsta.com\/it\/wp-json\/kinsta\/v1\/posts\/78327\/translations\/pt"},{"embeddable":true,"hreflang":"fr","title":"French","href":"https:\/\/kinsta.com\/it\/wp-json\/kinsta\/v1\/posts\/78327\/translations\/fr"},{"embeddable":true,"hreflang":"de","title":"German","href":"https:\/\/kinsta.com\/it\/wp-json\/kinsta\/v1\/posts\/78327\/translations\/de"},{"embeddable":true,"hreflang":"ja","title":"Japanese","href":"https:\/\/kinsta.com\/it\/wp-json\/kinsta\/v1\/posts\/78327\/translations\/jp"},{"embeddable":true,"hreflang":"nl","title":"Dutch","href":"https:\/\/kinsta.com\/it\/wp-json\/kinsta\/v1\/posts\/78327\/translations\/nl"},{"embeddable":true,"hreflang":"es","title":"Spanish","href":"https:\/\/kinsta.com\/it\/wp-json\/kinsta\/v1\/posts\/78327\/translations\/es"},{"href":"https:\/\/kinsta.com\/it\/wp-json\/kinsta\/v1\/posts\/78327\/tree"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/media\/78328"}],"wp:attachment":[{"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/media?parent=78327"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/tags?post=78327"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/topic?post=78327"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}