{"id":69034,"date":"2024-07-19T10:03:31","date_gmt":"2024-07-19T13:03:31","guid":{"rendered":"https:\/\/kinqsta.com\/pt\/?p=69034&#038;preview=true&#038;preview_id=69034"},"modified":"2024-07-29T07:44:42","modified_gmt":"2024-07-29T10:44:42","slug":"wordpress-htmx","status":"publish","type":"post","link":"https:\/\/kinqsta.com\/pt\/blog\/wordpress-htmx\/","title":{"rendered":"Turbinando o WordPress com HTMX: Como Aprimorar a Plataforma sem Frameworks Complexos"},"content":{"rendered":"<p>Embora haja muitas linguagens aceit\u00e1veis para codificar, o desenvolvimento web est\u00e1 se estabelecendo em umas poucas tecnologias confi\u00e1veis. Isso \u00e9 especialmente verdadeiro para o WordPress.<\/p>\n<p>O JavaScript ainda est\u00e1 em processo de amadurecimento para a plataforma, embora as expectativas dos usu\u00e1rios por sites din\u00e2micos e interativos continuem aumentando. Os frameworks podem preencher essa lacuna, mas a complexidade de alguns dos mais populares entre eles pode atrapalhar o seu desenvolvimento. \u00c9 a\u00ed que entra o HTMX. Essa biblioteca leve promete usabilidade, ao passo que simplifica a cria\u00e7\u00e3o de experi\u00eancias modernas na web.<\/p>\n<p>Neste artigo, exploraremos como o HTMX pode se integrar ao seu fluxo de trabalho de desenvolvimento WordPress. Ao longo da leitura, voc\u00ea aprender\u00e1 a usar essa forma poderosa e acess\u00edvel de criar conte\u00fado din\u00e2mico e interatividade.<\/p>\n<p>Discutiremos o que \u00e9 o HTMX, por que est\u00e1 ganhando relev\u00e2ncia e como se conecta ao WordPress. Voc\u00ea tamb\u00e9m ter\u00e1 um guia pr\u00e1tico sobre como integrar e usar o HTMX com o 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>O que \u00e9 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:\/\/kinqsta.com\/wp-content\/uploads\/2024\/07\/htmx-logo.png\" alt=\"The HTMX logo, which consists of the text \"htmx\" in white letters, with angle brackets on either side representing HTML tags. The \"x\" in \"htmx\" is colored blue for emphasis. Below the main text is a tagline that reads \"high power tools for HTML\". The logo is set against a dark background, creating a striking contrast.\" width=\"1200\" height=\"295\"><figcaption id=\"caption-attachment-182716\" class=\"wp-caption-text\">A logomarca do HTMX.<\/figcaption><\/figure>\n<p>Em poucas palavras, <a href=\"https:\/\/htmx.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">HTMX<\/a> \u00e9 uma biblioteca JavaScript que estende a linguagem padr\u00e3o <a href=\"https:\/\/kinqsta.com\/pt\/blog\/o-que-e-html\/\">HTML (HyperText Markup Language)<\/a> sem necessidade de escrever <a href=\"https:\/\/kinqsta.com\/pt\/blog\/o-que-e-javascript\/\">JavaScript<\/a> b\u00e1sico ou com framework. Essas extens\u00f5es <span style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" data-darkreader-inline-bgcolor>tamb\u00e9m <\/span><span style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" data-darkreader-inline-bgcolor>permitem <\/span><span style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" data-darkreader-inline-bgcolor>acessar outras tecnologias:<\/span><\/p>\n<ul>\n<li><strong>Asynchronous JavaScript and XML (AJAX).<\/strong> O HTMX usa AJAX para realizar solicita\u00e7\u00f5es &#8220;ass\u00edncronas&#8221; ao servidor. Isso permite que voc\u00ea fa\u00e7a atualiza\u00e7\u00f5es parciais da p\u00e1gina sem precisar recarregar a p\u00e1gina inteira.<\/li>\n<li><strong>WebSockets.<\/strong> Voc\u00ea pode estabelecer conex\u00f5es WebSocket e permitir a comunica\u00e7\u00e3o bidirecional em tempo real entre o navegador e o servidor.<\/li>\n<li><strong>Eventos enviados pelo servidor (SSE).<\/strong> Essa tecnologia permite que o servidor envie dados para o navegador. A partir da\u00ed, voc\u00ea pode usar o HTMX para fazer atualiza\u00e7\u00f5es de p\u00e1gina em tempo real.<\/li>\n<li><strong>Transi\u00e7\u00f5es CSS.<\/strong> Voc\u00ea pode integrar com <a href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/CSS\/CSS_transitions\/Using_CSS_transitions\" target=\"_blank\" rel=\"noopener noreferrer\">transi\u00e7\u00f5es CSS<\/a>, o que permite implementar atualiza\u00e7\u00f5es suaves e animadas em seu site.<\/li>\n<\/ul>\n<p>Na sua ess\u00eancia, o HTMX busca simplificar a cria\u00e7\u00e3o de aplicativos web din\u00e2micos e interativos. Sua\u00a0<span style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" data-darkreader-inline-bgcolor>funcionalidade<\/span><span style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" data-darkreader-inline-bgcolor>\u00a0<\/span><span style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" data-darkreader-inline-bgcolor>principal \u00e9 a capacidade de fazer <\/span><a style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" href=\"https:\/\/kinqsta.com\/pt\/blog\/solicitacoes-http-javascript\/\" data-darkreader-inline-bgcolor>solicita\u00e7\u00f5es HTTP<\/a> <code style=\"font-weight: var(--kmt-sys-typography-body-font-weight)\">GET<\/code><span style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" data-darkreader-inline-bgcolor>, <\/span><code style=\"font-weight: var(--kmt-sys-typography-body-font-weight)\">POST<\/code><span style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" data-darkreader-inline-bgcolor>, <\/span><code style=\"font-weight: var(--kmt-sys-typography-body-font-weight)\">PUT<\/code><span style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" data-darkreader-inline-bgcolor>, <\/span><code style=\"font-weight: var(--kmt-sys-typography-body-font-weight)\">PATCH<\/code><span style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" data-darkreader-inline-bgcolor> e <\/span><code style=\"font-weight: var(--kmt-sys-typography-body-font-weight)\">DELETE<\/code><span style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" data-darkreader-inline-bgcolor> a partir de elementos HTML. Isso significa que voc\u00ea pode processar atualiza\u00e7\u00f5es\u00a0<\/span><span style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" data-darkreader-inline-bgcolor>parciais<\/span><span style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" data-darkreader-inline-bgcolor>\u00a0<\/span><span style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" data-darkreader-inline-bgcolor>de p\u00e1gina <\/span>de forma fluida e suave, como em um aplicativo m\u00f3vel. <span style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" data-darkreader-inline-bgcolor>De modo <\/span>geral, o HTMX \u00e9 um\u00a0<span style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" data-darkreader-inline-bgcolor>poderoso<\/span><span style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" data-darkreader-inline-bgcolor>\u00a0<\/span><span style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" data-darkreader-inline-bgcolor>kit de ferramentas que ajuda voc\u00ea a criar uma experi\u00eancia web din\u00e2mica sem a necessidade de grandes quantidades de c\u00f3digo JavaScript.<\/span><\/p>\n<h2>Por que todos est\u00e3o falando sobre HTMX<\/h2>\n<p>Recentemente tem havido um burburinho em torno do HTMX, com as pesquisas sobre a biblioteca explodindo nos <a href=\"https:\/\/trends.google.com\/trends\/explore?date=today%205-y&#038;q=htmx&#038;hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">\u00faltimos cinco anos<\/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=\"wp-image-182718 size-full\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2024\/07\/htmx-trends.png\" alt=\"Um gr\u00e1fico de linhas mostrando os juros ao longo do tempo, de julho de 2019 a janeiro de 2024. O gr\u00e1fico come\u00e7a baixo e relativamente plano at\u00e9 meados de 2022, depois mostra um aumento acentuado seguido de flutua\u00e7\u00f5es em um n\u00edvel mais alto at\u00e9 2023 e no in\u00edcio de 2024.\" width=\"1200\" height=\"376\"><figcaption id=\"caption-attachment-182718\" class=\"wp-caption-text\">O gr\u00e1fico do Google Trends mostra um aumento nas pesquisas sobre HTMX num per\u00edodo de cinco anos.<\/figcaption><\/figure>\n<p>Esse aumento de popularidade \u00e9 devido em parte \u00e0s redes sociais e \u00e0 visibilidade do f\u00f3rum de desenvolvedores. Contudo, o HTMX tem v\u00e1rios fatores que o tornam uma op\u00e7\u00e3o de desenvolvimento atraente.<\/p>\n<ul>\n<li><strong>Simplicidade.<\/strong> Como o HTMX usa a familiar sintaxe HTML para ajudar a criar aplicativos web din\u00e2micos e interativos, \u00e9 muito simples de implementar e n\u00e3o apresenta quase nada da complexidade dos <a href=\"https:\/\/kinqsta.com\/pt\/blog\/bibliotecas-javascript\/\">frameworks JavaScript t\u00edpicos<\/a>.<\/li>\n<li><strong>Desempenho.<\/strong> Por minimizar a quantidade de JavaScript necess\u00e1ria, o HTMX pode proporcionar <a href=\"https:\/\/htmx.org\/essays\/a-real-world-react-to-htmx-port\/\" target=\"_blank\" rel=\"noopener noreferrer\">tempos de carregamento mais r\u00e1pidos<\/a> e melhor desempenho do que outros frameworks, especialmente para dispositivos m\u00f3veis.<\/li>\n<li><strong>Renderiza\u00e7\u00e3o no lado do servidor.<\/strong> A renderiza\u00e7\u00e3o no lado do servidor \u00e9 excelente se voc\u00ea quiser melhorar o tempo de carregamento inicial da p\u00e1gina e o <a href=\"https:\/\/kinqsta.com\/pt\/blog\/o-que-significa-seo\/\">SEO (otimiza\u00e7\u00e3o para mecanismos de pesquisa)<\/a>. O HTMX incorpora isso em seu conjunto de recursos.<\/li>\n<li><strong>Aprimoramento progressivo.<\/strong> Isso significa adicionar interatividade aos sites sem prejudicar a funcionalidade para aqueles que desativam o JavaScript. O HTMX trabalha com esses princ\u00edpios, ent\u00e3o voc\u00ea tem um benef\u00edcio de acessibilidade em m\u00e3os.<\/li>\n<\/ul>\n<p>Al\u00e9m disso, ao contr\u00e1rio de alguns frameworks maiores, o HTMX n\u00e3o exige complexos processo de build ou <span style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" data-darkreader-inline-bgcolor>cadeia de ferramentas. Combinado com uma curva de aprendizado muito mais suave, integrar a biblioteca em seus projetos \u00e9 mais f\u00e1cil.<\/span><\/p>\n<p>Esses benef\u00edcios, por sua vez, levam a uma maior discuss\u00e3o e ado\u00e7\u00e3o do HTMX. Se voc\u00ea est\u00e1 procurando uma solu\u00e7\u00e3o mais direta para criar experi\u00eancias web interativas, essa biblioteca pode ser a sua escolha.<\/p>\n<h2>A arquitetura do WordPress com rela\u00e7\u00e3o ao JavaScript<\/h2>\n<p>A hist\u00f3ria do WordPress com JavaScript ganhou momento a partir do <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 encerrou com a frase: &#8220;Aprenda JavaScript profundamente.&#8221;<\/p>\n<p>O caminho t\u00edpico dos desenvolvedores WordPress era pesquisar a necessidade de componentes interativos e din\u00e2micos em um site. Na maioria dos casos, o\u00a0<a href=\"https:\/\/kinqsta.com\/pt\/blog\/o-qu-e-jquery\/\">jQuery<\/a> tem sido o framework JavaScript do WordPress. At\u00e9 mesmo o superpopular <a href=\"https:\/\/news.harvard.edu\/gazette\/\" target=\"_blank\" rel=\"noopener noreferrer\">site da Harvard Gazette<\/a> \u00e9 constru\u00eddo com base no 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=\"wp-image-182715 size-full\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2024\/07\/harvard-gazette.png\" alt=\"A p\u00e1gina inicial do Harvard Gazette, mostrando uma grande imagem hero de uma mulher mais velha, e uma barra lateral com artigos de not\u00edcias atuais, completos com imagens em destaque.\" width=\"1200\" height=\"750\"><figcaption id=\"caption-attachment-182715\" class=\"wp-caption-text\">O site da Harvard Gazette, que usa WordPress e jQuery para funcionar.<\/figcaption><\/figure>\n<p>Como tal, o <a href=\"https:\/\/kinqsta.com\/pt\/blog\/wp-enqueue-scripts\/\">WordPress adiciona o jQuery \u00e0 fila<\/a> por padr\u00e3o. Al\u00e9m disso, muitos dos principais recursos, plugins e temas s\u00e3o amplamente utilizados. Essa abordagem \u00e9 consistente e tem amplo suporte.<\/p>\n<figure id=\"attachment_182713\" aria-describedby=\"caption-attachment-182713\" style=\"width: 1200px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-182713 size-full\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2024\/07\/block-editor.png\" alt=\"A interface do Editor de Blocos do WordPress. No lado esquerdo, h\u00e1 uma barra lateral com v\u00e1rias op\u00e7\u00f5es de Blocos, como Par\u00e1grafo, T\u00edtulo, Lista e Tabela. A \u00e1rea principal de conte\u00fado mostra um Bloco de Tabela com n\u00fameros de vers\u00e3o e datas de lan\u00e7amento do WordPress, junto com op\u00e7\u00f5es para fazer upload de m\u00eddia ou acessar a biblioteca de m\u00eddia. A interface tem um design limpo e moderno, com um fundo branco.\" width=\"1200\" height=\"635\"><figcaption id=\"caption-attachment-182713\" class=\"wp-caption-text\">Mostrando a barra lateral Blocos no Editor de Blocos do WordPress.<\/figcaption><\/figure>\n<p>Entretanto, \u00e0 medida que o desenvolvimento web evolui, o mesmo ocorre com a abordagem do WordPress em rela\u00e7\u00e3o ao JavaScript. A introdu\u00e7\u00e3o do <a href=\"https:\/\/kinqsta.com\/pt\/blog\/editor-gutenberg-wordpress\/\">Editor de Blocos<\/a> veio com uma mudan\u00e7a no sentido de usar o <a href=\"https:\/\/kinqsta.com\/pt\/blog\/o-que-e-react-js\/\">framework React<\/a> para criar interfaces de usu\u00e1rio, especialmente no painel WordPress.<\/p>\n<h3>Os pr\u00f3s e os contras de usar a atual implementa\u00e7\u00e3o JavaScript do WordPress<\/h3>\n<p>Isso significa que h\u00e1 uma mistura de frameworks com suporte no c\u00f3digo principal do WordPress. H\u00e1 alguns pontos positivos e negativos nisso. Primeiro, os pontos positivos:<\/p>\n<ul>\n<li>H\u00e1 uma ampla compatibilidade com o React e o jQuery. Quanto ao primeiro, trata-se de um framework poderoso e popular. J\u00e1 o segundo tem uma associa\u00e7\u00e3o de longa data com o WordPress.<\/li>\n<li>Muitos desenvolvedores est\u00e3o familiarizados com os frameworks porque o React e o jQuery s\u00e3o populares. Al\u00e9m disso, voc\u00ea pode encontrar mais recursos para aprender e solucionar problemas de ambos.<\/li>\n<li>O WordPress oferece suporte integrado para AJAX por meio de <code>wp_ajax<\/code>.<\/li>\n<\/ul>\n<p>Contudo, esses pr\u00f3s s\u00e3o contrabalan\u00e7ados por uma s\u00e9rie de pontos negativos:<\/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\">Depender do jQuery<\/a> prejudica o desempenho do seu site, e talvez voc\u00ea nem precise do framework para alguns aplicativos.<\/li>\n<li>Nem todos os recursos e funcionalidades &#8220;modernos&#8221; do JavaScript s\u00e3o implementados no WordPress, por raz\u00f5es de compatibilidade e seguran\u00e7a. Isso pode ser um problema se houver algo espec\u00edfico que voc\u00ea gostaria de criar.<\/li>\n<li>Com a adi\u00e7\u00e3o do React a \u00e1reas do WordPress (como os editores de blocos e de site), voc\u00ea tem uma curva de aprendizado mais \u00edngreme do que nunca.<\/li>\n<\/ul>\n<p>A\u00a0<span style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" data-darkreader-inline-bgcolor>atual<\/span><span style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" data-darkreader-inline-bgcolor>\u00a0<\/span><span style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" data-darkreader-inline-bgcolor>arquitetura JavaScript do WordPress \u00e9 adequada se voc\u00ea tiver o conhecimento de desenvolvimento nos frameworks recomendados ou o tempo para aprend\u00ea-los. Caso contr\u00e1rio, voc\u00ea provavelmente desejar\u00e1 uma solu\u00e7\u00e3o sem a complexidade dos frameworks t\u00edpicos, mas que ainda ofere\u00e7a uma experi\u00eancia interativa moderna no frontend. \u00c9 nesse ponto que o HTMX merece ser considerado.<\/span><\/p>\n<h2>Por que o HTMX pode ser mais adequado para algumas tarefas de desenvolvimento WordPress<\/h2>\n<p>O HTMX oferece algumas vantagens convincentes quando se trata de desenvolvimento WordPress. Pode oferecer um meio-termo entre a simplicidade do jQuery e o moderno e eficiente React.<\/p>\n<p>J\u00e1 falamos sobre alguns desses aspectos, mas vamos recapitul\u00e1-los resumidamente:<\/p>\n<ul>\n<li>O &#8220;peso&#8221; do HTMX pode ter um grande impacto no desempenho em compara\u00e7\u00e3o com jQuery e React.<\/li>\n<li>A maioria dos desenvolvedores WordPress se consideram mais experientes em HTML e PHP do que em JavaScript. O HTMX apresenta uma barreira de entrada mais f\u00e1cil \u00e0 medida que voc\u00ea trabalha com ele, bem parecido com uma linguagem de marca\u00e7\u00e3o.<\/li>\n<li>O PHP e o HTMX tamb\u00e9m funcionam bem juntos, gra\u00e7as \u00e0 renderiza\u00e7\u00e3o do lado do servidor, o que novamente pode ter um impacto positivo no desempenho.<\/li>\n<li>Apesar de ser uma biblioteca &#8220;mais nova&#8221;, voc\u00ea pode integrar o HTMX com mais facilidade e se familiarizar rapidamente com o seu funcionamento. Isso beneficiar\u00e1 seu fluxo de trabalho.<\/li>\n<\/ul>\n<p>Para o desenvolvimento WordPress, tamb\u00e9m gostamos da facilidade com que voc\u00ea pode criar prot\u00f3tipos de novas funcionalidades para um site. Voc\u00ea pode criar rapidamente novos recursos complexos codificando dentro do HTML existente. A partir da\u00ed voc\u00ea tem a flexibilidade de adicionar componentes React ou um pouco de jQuery quando necess\u00e1rio.<\/p>\n<p>Os princ\u00edpios de aprimoramento progressivo do HTMX tamb\u00e9m o favorecem. A acessibilidade deve ser central na sua estrat\u00e9gia de design, e o HTMX permite que voc\u00ea crie interatividade sem prejudic\u00e1-la para aqueles que optam por desativar o JavaScript no navegador.<\/p>\n<p>Por fim, uma vantagem significativa do HTMX \u00e9 n\u00e3o exigir nenhuma configura\u00e7\u00e3o personalizada ou especial no lado do servidor. Voc\u00ea pode usar sua marca\u00e7\u00e3o HTMX com qualquer provedor, inclusive a <a href=\"https:\/\/kinqsta.com\/pt\/\">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=\"wp-image-182719 size-full\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2024\/07\/kinsta-website.png\" alt=\"A p\u00e1gina inicial da Kinsta mostrando o painel MyKinsta. Inclui detalhes b\u00e1sicos como localiza\u00e7\u00e3o (B\u00e9lgica) e nome do site, detalhes do ambiente com endere\u00e7os IP, informa\u00e7\u00f5es de conex\u00e3o SFTP\/SSH e dois gr\u00e1ficos. Um gr\u00e1fico mostra visitas ao site ao longo do tempo, e outro mostra o tempo total de transa\u00e7\u00e3o dividido pelos componentes tecnol\u00f3gicos.\" width=\"1200\" height=\"704\"><figcaption id=\"caption-attachment-182719\" class=\"wp-caption-text\">A p\u00e1gina inicial da Kinsta mostrando o painel MyKinsta.<\/figcaption><\/figure>\n<p>Dado o desempenho de qualidade de nossas provis\u00f5es de hospedagem, um site que usa HTMX deve ser muito r\u00e1pido. Isso afetar\u00e1 suas m\u00e9tricas de SEO, n\u00fameros de tr\u00e1fego, tempo de desenvolvimento, fluxo de solu\u00e7\u00e3o de problemas e toda a cadeia de desenvolvimento.<\/p>\n<h2>Casos de uso t\u00edpicos de HTMX<\/h2>\n<p>Tocamos nesse ponto na \u00faltima se\u00e7\u00e3o: o HTMX n\u00e3o \u00e9 uma biblioteca que voc\u00ea usar\u00e1 como substituto direto de nenhum dos frameworks JavaScript mais conhecidos. Em vez disso, funcionar\u00e1 melhor junto com o que j\u00e1 existe para ajudar a realizar o trabalho quando necess\u00e1rio.<\/p>\n<p>Isso significa que voc\u00ea usar\u00e1 o HTMX para determinadas tarefas para as quais o jQuery e o React talvez n\u00e3o sejam ideais. Antes de come\u00e7ar na implementa\u00e7\u00e3o do HTMX no WordPress, vamos apresentar tr\u00eas cen\u00e1rios comuns em que a biblioteca pode aprimorar o WordPress.<\/p>\n<div><\/div><kinsta-auto-toc list-style=\"decimal\" selector=\"h3\" count-number=\"3\" sub-toc=\"true\"><\/kinsta-auto-toc>\n<h3>Recarregamentos parciais de p\u00e1ginas<\/h3>\n<p>O grande caso de uso do HTMX \u00e9 como voc\u00ea pode implementar atualiza\u00e7\u00f5es parciais de p\u00e1gina com m\u00ednimo esfor\u00e7o. Isso pode ser uma grande vantagem para muitos desenvolvedores, especialmente para mockups e prot\u00f3tipos r\u00e1pidos. Todavia, o HTMX pode fornecer resultados com qualidade de produ\u00e7\u00e3o.<\/p>\n<p>Por exemplo, pode ajud\u00e1-lo a implementar a funcionalidade de pesquisa em tempo real no seu site:<\/p>\n<figure id=\"attachment_182721\" aria-describedby=\"caption-attachment-182721\" style=\"width: 1200px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-182721 size-full\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2024\/07\/live-search.gif\" alt=\"Um GIF de uma caixa de di\u00e1logo de busca din\u00e2mica usando HTMX com um fundo escuro. Exibe uma tabela de contatos, mostrando os primeiros nomes, sobrenomes e endere\u00e7os de e-mail de v\u00e1rias pessoas. A tabela inclui 10 linhas de informa\u00e7\u00f5es de contato de amostra.\" width=\"1200\" height=\"370\"><figcaption id=\"caption-attachment-182721\" class=\"wp-caption-text\">Uma interface de pesquisa din\u00e2mica e em tempo real usando o HTMX.<\/figcaption><\/figure>\n<p>A <a href=\"https:\/\/htmx.org\/examples\/\" target=\"_blank\" rel=\"noopener noreferrer\">biblioteca de exemplos<\/a> do HTMX tamb\u00e9m aborda a metodologia para realizar atualiza\u00e7\u00f5es em tempo real em outras \u00e1reas de conte\u00fado da p\u00e1gina. Assim, <a href=\"https:\/\/htmx.org\/examples\/update-other-content\/\" target=\"_blank\" rel=\"noopener noreferrer\">este exemplo<\/a> usa um formul\u00e1rio de contato com uma tabela de contatos dispon\u00edveis que seria atualizada quando o usu\u00e1rio envia uma nova adi\u00e7\u00e3o. O HTMX tem v\u00e1rias maneiras elegantes de fazer isso:<\/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>O formul\u00e1rio usa os atributos <code>hx-post<\/code> e <code>hx-target<\/code> para expandir seu destino. Voc\u00ea tamb\u00e9m pode usar atributos HTMX para <a href=\"https:\/\/htmx.org\/examples\/file-upload-input\/\" target=\"_blank\" rel=\"noopener noreferrer\">preservar entradas de formul\u00e1rio<\/a> ap\u00f3s um erro ou outra tentativa de valida\u00e7\u00e3o que use atualiza\u00e7\u00f5es:<\/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>Aqui voc\u00ea coloca a entrada para o arquivo bin\u00e1rio fora do elemento principal do formul\u00e1rio e usa os atributos <code>hx-swap<\/code> e <code>hx-target<\/code>.<\/p>\n<h3>Carregamento din\u00e2mico<\/h3>\n<p>Essa abordagem de atualiza\u00e7\u00e3o e carregamento din\u00e2mico tamb\u00e9m pode ser adequada para tarefas mais comuns. Veja a <a href=\"https:\/\/htmx.org\/examples\/infinite-scroll\/\" target=\"_blank\" rel=\"noopener noreferrer\">rolagem infinita<\/a>, por exemplo:<\/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>O atributo <code>hx-swap<\/code> atua como um &#8220;ouvinte&#8221; para o atributo <code>hx-trigger<\/code>. Quando o usu\u00e1rio chega ao final da lista, o HTMX carrega a segunda p\u00e1gina de contatos infinitamente.<\/p>\n<p>Voc\u00ea tamb\u00e9m pode aplicar o mesmo m\u00e9todo \u00e0 funcionalidade de <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=\"wp-image-182720 size-full\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2024\/07\/lazy-loading-gif.gif\" alt=\"Um GIF de uma p\u00e1gina web com fundo escuro, que implementa lazy loading. O GIF come\u00e7a com uma pequena anima\u00e7\u00e3o de carregamento, a partir da qual uma imagem de gr\u00e1fico surge gradualmente conforme o usu\u00e1rio rola a p\u00e1gina para baixo.\" width=\"1200\" height=\"282\"><figcaption id=\"caption-attachment-182720\" class=\"wp-caption-text\">Usando o HTMX para implementar o Lazy Loading.<\/figcaption><\/figure>\n<p>Novamente, este usa os atributos <code>hx-get<\/code> e <code>hx-trigger<\/code> para iniciar uma transi\u00e7\u00e3o htmx-settling para carregar o gr\u00e1fico usando um fade-in lento.<\/p>\n<h3>Apresenta\u00e7\u00e3o de dados<\/h3>\n<p>N\u00e3o \u00e9 de surpreender que o HTMX seja excelente para apresentar informa\u00e7\u00f5es na tela usando elementos interativos ou din\u00e2micos.<\/p>\n<p>Por exemplo, voc\u00ea pode implementar todos os tipos de filtragem de conte\u00fado, como <a href=\"https:\/\/htmx.org\/examples\/value-select\/\" target=\"_blank\" rel=\"noopener noreferrer\">sele\u00e7\u00f5es de valores<\/a>. \u00c9 nesse caso que as op\u00e7\u00f5es de uma lista s\u00e3o preenchidas com base nas op\u00e7\u00f5es de outra lista:<\/p>\n<figure id=\"attachment_182723\" aria-describedby=\"caption-attachment-182723\" style=\"width: 1200px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-182723 size-full\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2024\/07\/value-select-gif.gif\" alt=\"Um GIF de uma interface de usu\u00e1rio mostrando um menu suspenso para selecionar a marca e o modelo de um carro. O t\u00edtulo diz \"Escolha uma Marca\/Modelo\" e as op\u00e7\u00f5es vis\u00edveis s\u00e3o Audi (que est\u00e1 selecionada), Toyota e BMW. O usu\u00e1rio percorre cada marca, o que altera as op\u00e7\u00f5es no menu suspenso do modelo.\" width=\"1200\" height=\"374\"><figcaption id=\"caption-attachment-182723\" class=\"wp-caption-text\">Usando HTMX para atribuir sele\u00e7\u00f5es de valores a elementos do site.<\/figcaption><\/figure>\n<p>Voc\u00ea pode at\u00e9 mesmo configurar <a href=\"https:\/\/htmx.org\/examples\/modal-bootstrap\/\" target=\"_blank\" rel=\"noopener noreferrer\">di\u00e1logos modais<\/a> ou abas de interface com a mesma facilidade. Isso tamb\u00e9m demonstra como o HTMX funciona com outras bibliotecas e frameworks, como o 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=\"wp-image-182722 size-full\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2024\/07\/modal-box-gif.gif\" alt=\"Um GIF de uma se\u00e7\u00e3o de p\u00e1gina web com tema claro intitulada \"Demo\" com um \u00edcone de link e um bot\u00e3o intitulado \"OPEN MODAL\" em letras mai\u00fasculas. Quando o usu\u00e1rio clica no bot\u00e3o, uma caixa modal \u00e9 aberta usando HTMX.\" width=\"1200\" height=\"250\"><figcaption id=\"caption-attachment-182722\" class=\"wp-caption-text\">Abrindo uma caixa de di\u00e1logo modal usando o HTMX.<\/figcaption><\/figure>\n<p>Essa flexibilidade tamb\u00e9m se estende \u00e0 implementa\u00e7\u00e3o de abas. H\u00e1 duas maneiras de fazer isso: combinando <a href=\"https:\/\/htmx.org\/examples\/tabs-javascript\/\" target=\"_blank\" rel=\"noopener noreferrer\">JavaScript b\u00e1sico<\/a> e HTMX, ou usando os princ\u00edpios de <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=\"wp-image-182714 size-full\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2024\/07\/content-tabs.gif\" alt=\"Um GIF de uma interface com abas usando HTMX, com tr\u00eas abas rotuladas como \"Tab 1\", \"Tab 2\" e \"Tab 3\". O usu\u00e1rio alterna entre cada aba, que exibe diferentes par\u00e1grafos de texto 'Lorem Ipsum'. A interface tem um fundo escuro com texto branco, conferindo-lhe uma apar\u00eancia elegante e moderna.\" width=\"1200\" height=\"208\"><figcaption id=\"caption-attachment-182714\" class=\"wp-caption-text\">Um GIF de uma interface com abas usando HTMX.<\/figcaption><\/figure>\n<p>H\u00e1 muitas outras maneiras de usar o HTMX para elementos de site frontend com seu n\u00facleo no lado do servidor. Na pr\u00f3xima se\u00e7\u00e3o, forneceremos as ferramentas para criar sua pr\u00f3pria vis\u00e3o no WordPress.<\/p>\n<h2>Como integrar o HTMX ao WordPress<\/h2>\n<p>Se voc\u00ea quiser adicionar o HTMX ao seu site WordPress, a boa not\u00edcia \u00e9 que \u00e9 r\u00e1pido e indolor. A seguir veremos uma abordagem de tr\u00eas etapas para esse trabalho. N\u00e3o cobriremos todo o processo e o c\u00f3digo para desenvolver funcionalidades para WordPress, mas tocaremos em todos os pontos-chave que voc\u00ea precisa seguir.<\/p>\n<p>Al\u00e9m disso, grande parte do processo, especialmente a primeira etapa, deve ser t\u00edpica se voc\u00ea j\u00e1 tiver desenvolvido para WordPress.<\/p>\n<div><\/div><kinsta-auto-toc list-style=\"decimal\" selector=\"h3\" count-number=\"3\" sub-toc=\"true\"><\/kinsta-auto-toc>\n<h3>1. Enfileire o HTMX em seu c\u00f3digo PHP<\/h3>\n<p>Como acontece com qualquer script adicional para WordPress, voc\u00ea deve incluir a biblioteca HTMX no c\u00f3digo do seu tema ou 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>O guia de in\u00edcio r\u00e1pido do HTMX chama a biblioteca de um CDN (Content Delivery Network, rede de distribui\u00e7\u00e3o de conte\u00fado). Voc\u00ea deve decidir se essa \u00e9 uma boa ideia para o seu projeto.<\/p>\n<\/aside>\n\n<figure id=\"attachment_182717\" aria-describedby=\"caption-attachment-182717\" style=\"width: 1200px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-182717 size-full\" style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2024\/07\/htmx-quick-start.png\" alt=\"Um snippet de c\u00f3digo do guia de in\u00edcio r\u00e1pido do HTMX. Exibe uma \u00fanica linha de c\u00f3digo HTML que inclui uma tag script para carregar a biblioteca HTMX de uma fonte externa. O c\u00f3digo est\u00e1 destacado em laranja para chamar a aten\u00e7\u00e3o. Abaixo da tag script, h\u00e1 um exemplo de um elemento bot\u00e3o HTML usando atributos HTMX. O c\u00f3digo \u00e9 exibido em um fundo escuro com realce de sintaxe.\" width=\"1200\" height=\"257\" data-darkreader-inline-bgcolor><figcaption id=\"caption-attachment-182717\" class=\"wp-caption-text\">Certifique-se de usar a vers\u00e3o mais recente do HTMX e observe que o guia de in\u00edcio r\u00e1pido chama a biblioteca de um CDN \u2014 o que pode n\u00e3o ser adequado para o seu projeto.<\/figcaption><\/figure>\n<p>No entanto, uma ideia decisivamente boa \u00e9 envolver essa fila em uma fun\u00e7\u00e3o que tamb\u00e9m enfileire e <a href=\"https:\/\/kinqsta.com\/pt\/blog\/padroes-de-bloco-wordpress\/\">registre um bloco<\/a> no WordPress. \u00c9 claro que isso depende do fato de o seu projeto exigir que voc\u00ea trabalhe com o Editor de Blocos ou n\u00e3o.<\/p>\n<p>A parte final do enfileiramento do HTMX \u00e9 invocar a fun\u00e7\u00e3o inteira usando <code>add_action<\/code>. Voc\u00ea precisar\u00e1 voltar a usar <a href=\"https:\/\/kinqsta.com\/pt\/blog\/hooks-wordpress\/\">hooks e filtros<\/a> mais tarde, ao trabalhar com solicita\u00e7\u00f5es AJAX.<\/p>\n<h3>2. Adicione elementos do HTMX aos seus arquivos de template do WordPress<\/h3>\n<p>Com base em nossos casos de uso, voc\u00ea ver\u00e1 que o HTMX requer a marca\u00e7\u00e3o apropriada no HTML para manipular e acionar solicita\u00e7\u00f5es AJAX. A biblioteca usa <a href=\"https:\/\/kinqsta.com\/pt\/blog\/solicitacoes-http-javascript\/\">atributos t\u00edpicos de solicita\u00e7\u00e3o HTTP<\/a> para criar seus pr\u00f3prios atributos \u2014 <code>GET<\/code>, <code>POST<\/code>, <code>PUSH<\/code>, <code>PATCH<\/code> e <code>DELETE<\/code> \u2014 com um prefixo <code>hx-<\/code>:<\/p>\n<pre><code class=\"language-html\">hx-post\n<\/code><\/pre>\n<p>As solicita\u00e7\u00f5es AJAX do WordPress usam o endpoint <strong>admin-ajax.php<\/strong>, do qual voc\u00ea deve se lembrar! Os elementos t\u00edpicos que voc\u00ea criar\u00e1 com o HTMX far\u00e3o uma solicita\u00e7\u00e3o AJAX, a enviar\u00e3o para um elemento de destino e, potencialmente, processar\u00e3o um acionador.<\/p>\n<p>O atributo <code>hx-target<\/code> permite que voc\u00ea especifique para onde ir\u00e1 o resultado da solicita\u00e7\u00e3o. Pode ser outra p\u00e1gina, um <code>div<\/code> <span style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" data-darkreader-inline-bgcolor>espec\u00edfico<\/span><span style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" data-darkreader-inline-bgcolor> ou qualquer outra coisa. Pense nisso como tags de \u00e2ncora HTML:<\/span><\/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>O HTMX usa &#8220;natural&#8221; e &#8220;n\u00e3o natural&#8221; para definir uma a\u00e7\u00e3o. Por exemplo, <code>submit<\/code> acionar\u00e1 um formul\u00e1rio, e esse \u00e9 um evento de elemento natural. Para eventos de elementos n\u00e3o naturais, voc\u00ea usar\u00e1 o atributo <code>hx-trigger<\/code>. <a href=\"https:\/\/htmx.org\/docs\/#triggers\" target=\"_blank\" rel=\"noopener noreferrer\">Esses acionadores<\/a> podem ser uma das partes mais complexas do HTMX, mas ainda assim s\u00e3o simples de entender.<\/p>\n<p>Por exemplo, voc\u00ea pode usar um acionador para monitorar um campo de entrada:<\/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>Se voc\u00ea alterar o que estiver em um campo de entrada, acionar\u00e1 uma atualiza\u00e7\u00e3o em outra parte da p\u00e1gina. Como outro exemplo, voc\u00ea pode querer acionar um evento uma \u00fanica vez com base em uma a\u00e7\u00e3o at\u00edpica, como a entrada do cursor em uma parte da tela:<\/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>Isso pode inspirar voc\u00ea a criar aplicativos como <a href=\"https:\/\/kinqsta.com\/pt\/blog\/popup-elementor\/\">pop-ups<\/a> ou outras caixas modais. Entretanto, antes de poder v\u00ea-los em a\u00e7\u00e3o, voc\u00ea precisa processar a solicita\u00e7\u00e3o AJAX.<\/p>\n<h3>3. Lide com as solicita\u00e7\u00f5es AJAX<\/h3>\n<p>Por fim, voc\u00ea precisa tratar a solicita\u00e7\u00e3o AJAX no lado do servidor. Para WordPress, \u00e9 um bom h\u00e1bito armazenar tudo isso em um arquivo separado. Voc\u00ea pode cham\u00e1-lo como quiser, mas <strong>ajax-functions.php<\/strong> \u00e9 descritivo e claro o suficiente.<\/p>\n<p>Essa parte do uso do HTMX exigir\u00e1 que <a href=\"https:\/\/kinqsta.com\/pt\/blog\/tutoriais-de-php\/\">suas habilidades com PHP entrem em a\u00e7\u00e3o<\/a>. O processamento de suas solicita\u00e7\u00f5es AJAX ser\u00e1 exclusivo para o seu projeto em particular. \u00c9 onde voc\u00ea vincula os atributos nomeados em seus arquivos de template ao processamento do lado do servidor.<\/p>\n<p>\u00c9 claro que voc\u00ea faria isso de qualquer forma, independentemente de codificar com HTMX, JavaScript b\u00e1sico ou qualquer outro. Aqui est\u00e1 um pseudoc\u00f3digo para mostrar aproximadamente como isso seria:<\/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>Mesmo assim, isso pode n\u00e3o ser relevante ou nem mesmo se\u00a0<span style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" data-darkreader-inline-bgcolor>assemelhar<\/span><span style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" data-darkreader-inline-bgcolor> a<\/span><span style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" data-darkreader-inline-bgcolor>o tratamento de AJAX do seu pr\u00f3prio projeto. As mesmas habilidades que voc\u00ea usa para <\/span><a style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" href=\"https:\/\/kinqsta.com\/pt\/blog\/modelos-de-blocos-do-wordpress\/\" data-darkreader-inline-bgcolor>construir templates de blocos<\/a><span style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" data-darkreader-inline-bgcolor>, <\/span><a style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" href=\"https:\/\/kinqsta.com\/pt\/blog\/plugin-wordpress-extensivel\/\" data-darkreader-inline-bgcolor>estender plugins<\/a><span style=\"background-color: var(--kmt-sys-color-background-neutral-weak, #f9f5f3);font-weight: var(--kmt-sys-typography-body-font-weight)\" data-darkreader-inline-bgcolor> usando PHP, e<\/span>\u00a0outras atividades ajudar\u00e3o voc\u00ea a criar seus pr\u00f3prios manipuladores de solicita\u00e7\u00f5es AJAX e fun\u00e7\u00f5es.<\/p>\n<h2>Dicas para usar o HTMX com o WordPress<\/h2>\n<p>Embora o uso do HTMX seja uma das maneiras mais simples de implementar conte\u00fado din\u00e2mico com WordPress, ainda precisa de gerenciamento e considera\u00e7\u00e3o cuidadosos. H\u00e1 tamb\u00e9m algumas maneiras de melhorar sua experi\u00eancia de desenvolvimento.<\/p>\n<p>A primeira dica est\u00e1 relacionada \u00e0 &#8220;maturidade&#8221; do HTMX. No momento, trata-se de uma nova biblioteca para a plataforma, portanto, n\u00e3o tem o mesmo n\u00edvel de integra\u00e7\u00e3o que o jQuery, por exemplo.<\/p>\n<p>O HTMX tem uma excelente documenta\u00e7\u00e3o, mas n\u00e3o h\u00e1 tantos recursos para combinar a biblioteca com o WordPress. Isso significa que voc\u00ea precisar\u00e1 fazer o trabalho bra\u00e7al para que tudo funcione sem a rede de seguran\u00e7a de uma comunidade pronta.<\/p>\n<p>Um dos grandes conselhos que podemos dar \u00e9 criar sua funcionalidade <a href=\"https:\/\/kinqsta.com\/blog\/publish-plugin-wordpress-plugin-directory\/\">em um plugin<\/a>, por enquanto. Isso pode proporcionar uma estrutura e um gerenciamento mais f\u00e1cil enquanto voc\u00ea verifica se h\u00e1 bugs e outros erros de integra\u00e7\u00e3o.<\/p>\n<p>J\u00e1 que estamos falando de WordPress, procure entender como o arquivo<strong> admin-ajax.php <\/strong>se conecta com o restante do ecossistema, pois muitas intera\u00e7\u00f5es estar\u00e3o envolvidas.<\/p>\n<figure id=\"attachment_182712\" aria-describedby=\"caption-attachment-182712\" style=\"width: 1200px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-182712 size-full\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2024\/07\/admin-ajax.png\" alt=\"Uma janela de editor de c\u00f3digo exibindo c\u00f3digo PHP para um arquivo admin-ajax.php do WordPress. O c\u00f3digo inclui coment\u00e1rios e fun\u00e7\u00f5es para carregar o c\u00f3digo bootstrap do WordPress, lidar com solicita\u00e7\u00f5es cross-domain, definir cabe\u00e7alhos e carregar APIs de administra\u00e7\u00e3o e manipuladores de Ajax do WordPress. O editor tem um tema escuro com realce de sintaxe em azul-claro.\" width=\"1200\" height=\"814\"><figcaption id=\"caption-attachment-182712\" class=\"wp-caption-text\">O arquivo admin-ajax.php em um editor de c\u00f3digo.<\/figcaption><\/figure>\n<p>Embora o HTMX tenha um \u00f3timo desempenho, voc\u00ea deve garantir que o <a href=\"https:\/\/kinqsta.com\/pt\/blog\/admin-ajax\/\">uso do AJAX<\/a> seja baixo o suficiente para n\u00e3o afetar a velocidade de carregamento do site ou o SEO. A depura\u00e7\u00e3o de solicita\u00e7\u00f5es tamb\u00e9m deve ser um elemento b\u00e1sico do seu fluxo de trabalho, especialmente as m\u00e9tricas <a href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/API\/XMLHttpRequest\" target=\"_blank\" rel=\"noopener noreferrer\">XMLHttpRequest (XHR)<\/a> nas ferramentas de desenvolvimento do navegador.<\/p>\n<figure id=\"attachment_182724\" aria-describedby=\"caption-attachment-182724\" style=\"width: 1200px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-182724 size-full\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2024\/07\/xhr-metrics.png\" alt=\"A interface DevTools do navegador Brave, mostrando o site do WordPress no topo. Inclui um texto descrevendo-o como \"A plataforma de publica\u00e7\u00e3o de c\u00f3digo aberto escolhida por milh\u00f5es de sites em todo o mundo\" e uma miniatura de v\u00eddeo sobre o WordCamp Europe 2024. O console do desenvolvedor mostra solicita\u00e7\u00f5es XHR para o site.\" width=\"1200\" height=\"630\"><figcaption id=\"caption-attachment-182724\" class=\"wp-caption-text\">As solicita\u00e7\u00f5es Fetch\/XHR para o site WordPress.org.<\/figcaption><\/figure>\n<p>Esse \u00e9 o registro dos dados de solicita\u00e7\u00e3o e resposta, que voc\u00ea usar\u00e1 para depurar solicita\u00e7\u00f5es AJAX e chamadas de API (Application Programming Interface). Como o HTMX ainda n\u00e3o tem uma integra\u00e7\u00e3o perfeita com o WordPress, a depura\u00e7\u00e3o pode ser uma tarefa mais pertinente do que seria com outros frameworks JavaScript.<\/p>\n<h2>Resumo<\/h2>\n<p>Para desenvolvedores WordPress que desejam criar elementos din\u00e2micos e interativos no site sem que frameworks JavaScript complexos tomem todo o seu tempo, o <a href=\"https:\/\/htmx.org\/\">HTMX<\/a> traz uma proposta empolgante. Ele permite que voc\u00ea construa dentro do HTML e oferece uma alternativa simplificada ao jQuery e ao React, mas ainda proporcionando uma interatividade moderna.<\/p>\n<p>Na pr\u00e1tica, voc\u00ea usar\u00e1 o HTMX junto com esses outros frameworks, pois ele n\u00e3o ser\u00e1 adequado para todas as tarefas. Mesmo assim, \u00e9 simples de implementar e oferece uma maneira r\u00e1pida de prototipar os elementos interativos do seu site \u2013 e pode at\u00e9 se tornar sua vers\u00e3o de produ\u00e7\u00e3o.<\/p>\n<p>HTMX com WordPress parece uma combina\u00e7\u00e3o tentadora pra voc\u00ea? Deixe-nos saber suas opini\u00f5es na se\u00e7\u00e3o de coment\u00e1rios abaixo!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Embora haja muitas linguagens aceit\u00e1veis para codificar, o desenvolvimento web est\u00e1 se estabelecendo em umas poucas tecnologias confi\u00e1veis. Isso \u00e9 especialmente verdadeiro para o WordPress. O &#8230;<\/p>\n","protected":false},"author":199,"featured_media":69035,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_kinsta_gated_content":false,"_kinsta_gated_content_redirect":"","footnotes":""},"tags":[],"topic":[1026,977],"class_list":["post-69034","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","topic-desenvolvimento-wordpress","topic-frameworks-javascript"],"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>Turbinando o WordPress com HTMX - Kinsta\u00ae<\/title>\n<meta name=\"description\" content=\"Frameworks JavaScript podem ser complexos, o que n\u00e3o \u00e9 o ideal para design web. Aprenda como a biblioteca HTMX pode ser a solu\u00e7\u00e3o para implementar 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:\/\/kinqsta.com\/pt\/blog\/wordpress-htmx\/\" \/>\n<meta property=\"og:locale\" content=\"pt_PT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Turbinando o WordPress com HTMX: Como Aprimorar a Plataforma sem Frameworks Complexos\" \/>\n<meta property=\"og:description\" content=\"Frameworks JavaScript podem ser complexos, o que n\u00e3o \u00e9 o ideal para design web. Aprenda como a biblioteca HTMX pode ser a solu\u00e7\u00e3o para implementar JavaScript!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kinqsta.com\/pt\/blog\/wordpress-htmx\/\" \/>\n<meta property=\"og:site_name\" content=\"Kinsta\u00ae\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/kinstapt\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-07-19T13:03:31+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-07-29T10:44:42+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/kinqsta.com\/pt\/wp-content\/uploads\/sites\/3\/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=\"Frameworks JavaScript podem ser complexos, o que n\u00e3o \u00e9 o ideal para design web. Aprenda como a biblioteca HTMX pode ser a solu\u00e7\u00e3o para implementar JavaScript!\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/kinqsta.com\/pt\/wp-content\/uploads\/sites\/3\/2024\/07\/supercharging-wordpress-with-htmx-1024x512.jpg\" \/>\n<meta name=\"twitter:creator\" content=\"@kinsta_pt\" \/>\n<meta name=\"twitter:site\" content=\"@kinsta_pt\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jeremy Holcombe\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tempo estimado de leitura\" \/>\n\t<meta name=\"twitter:data2\" content=\"19 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/kinqsta.com\/pt\/blog\/wordpress-htmx\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/kinqsta.com\/pt\/blog\/wordpress-htmx\/\"},\"author\":{\"name\":\"Jeremy Holcombe\",\"@id\":\"https:\/\/kinqsta.com\/pt\/#\/schema\/person\/4eee42881d7b5a73ebb4f58dd5223b21\"},\"headline\":\"Turbinando o WordPress com HTMX: Como Aprimorar a Plataforma sem Frameworks Complexos\",\"datePublished\":\"2024-07-19T13:03:31+00:00\",\"dateModified\":\"2024-07-29T10:44:42+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/kinqsta.com\/pt\/blog\/wordpress-htmx\/\"},\"wordCount\":3448,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/kinqsta.com\/pt\/#organization\"},\"image\":{\"@id\":\"https:\/\/kinqsta.com\/pt\/blog\/wordpress-htmx\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinqsta.com\/pt\/wp-content\/uploads\/sites\/3\/2024\/07\/supercharging-wordpress-with-htmx.jpg\",\"inLanguage\":\"pt-PT\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/kinqsta.com\/pt\/blog\/wordpress-htmx\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/kinqsta.com\/pt\/blog\/wordpress-htmx\/\",\"url\":\"https:\/\/kinqsta.com\/pt\/blog\/wordpress-htmx\/\",\"name\":\"Turbinando o WordPress com HTMX - Kinsta\u00ae\",\"isPartOf\":{\"@id\":\"https:\/\/kinqsta.com\/pt\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/kinqsta.com\/pt\/blog\/wordpress-htmx\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/kinqsta.com\/pt\/blog\/wordpress-htmx\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinqsta.com\/pt\/wp-content\/uploads\/sites\/3\/2024\/07\/supercharging-wordpress-with-htmx.jpg\",\"datePublished\":\"2024-07-19T13:03:31+00:00\",\"dateModified\":\"2024-07-29T10:44:42+00:00\",\"description\":\"Frameworks JavaScript podem ser complexos, o que n\u00e3o \u00e9 o ideal para design web. Aprenda como a biblioteca HTMX pode ser a solu\u00e7\u00e3o para implementar JavaScript!\",\"breadcrumb\":{\"@id\":\"https:\/\/kinqsta.com\/pt\/blog\/wordpress-htmx\/#breadcrumb\"},\"inLanguage\":\"pt-PT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/kinqsta.com\/pt\/blog\/wordpress-htmx\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-PT\",\"@id\":\"https:\/\/kinqsta.com\/pt\/blog\/wordpress-htmx\/#primaryimage\",\"url\":\"https:\/\/kinqsta.com\/pt\/wp-content\/uploads\/sites\/3\/2024\/07\/supercharging-wordpress-with-htmx.jpg\",\"contentUrl\":\"https:\/\/kinqsta.com\/pt\/wp-content\/uploads\/sites\/3\/2024\/07\/supercharging-wordpress-with-htmx.jpg\",\"width\":1460,\"height\":730},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/kinqsta.com\/pt\/blog\/wordpress-htmx\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/kinqsta.com\/pt\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Desenvolvimento WordPress\",\"item\":\"https:\/\/kinqsta.com\/pt\/topicos\/desenvolvimento-wordpress\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Turbinando o WordPress com HTMX: Como Aprimorar a Plataforma sem Frameworks Complexos\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/kinqsta.com\/pt\/#website\",\"url\":\"https:\/\/kinqsta.com\/pt\/\",\"name\":\"Kinsta\u00ae\",\"description\":\"Solu\u00e7\u00f5es de hospedagem Premium, r\u00e1pida e segura\",\"publisher\":{\"@id\":\"https:\/\/kinqsta.com\/pt\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/kinqsta.com\/pt\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pt-PT\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/kinqsta.com\/pt\/#organization\",\"name\":\"Kinsta\",\"url\":\"https:\/\/kinqsta.com\/pt\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-PT\",\"@id\":\"https:\/\/kinqsta.com\/pt\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/kinqsta.com\/pt\/wp-content\/uploads\/sites\/3\/2023\/12\/kinsta-logo.jpeg\",\"contentUrl\":\"https:\/\/kinqsta.com\/pt\/wp-content\/uploads\/sites\/3\/2023\/12\/kinsta-logo.jpeg\",\"width\":500,\"height\":500,\"caption\":\"Kinsta\"},\"image\":{\"@id\":\"https:\/\/kinqsta.com\/pt\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/kinstapt\/\",\"https:\/\/x.com\/kinsta_pt\",\"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:\/\/kinqsta.com\/pt\/#\/schema\/person\/4eee42881d7b5a73ebb4f58dd5223b21\",\"name\":\"Jeremy Holcombe\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-PT\",\"@id\":\"https:\/\/kinqsta.com\/pt\/#\/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:\/\/kinqsta.com\/pt\/blog\/author\/jeremyholcombe\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Turbinando o WordPress com HTMX - Kinsta\u00ae","description":"Frameworks JavaScript podem ser complexos, o que n\u00e3o \u00e9 o ideal para design web. Aprenda como a biblioteca HTMX pode ser a solu\u00e7\u00e3o para implementar 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:\/\/kinqsta.com\/pt\/blog\/wordpress-htmx\/","og_locale":"pt_PT","og_type":"article","og_title":"Turbinando o WordPress com HTMX: Como Aprimorar a Plataforma sem Frameworks Complexos","og_description":"Frameworks JavaScript podem ser complexos, o que n\u00e3o \u00e9 o ideal para design web. Aprenda como a biblioteca HTMX pode ser a solu\u00e7\u00e3o para implementar JavaScript!","og_url":"https:\/\/kinqsta.com\/pt\/blog\/wordpress-htmx\/","og_site_name":"Kinsta\u00ae","article_publisher":"https:\/\/www.facebook.com\/kinstapt\/","article_published_time":"2024-07-19T13:03:31+00:00","article_modified_time":"2024-07-29T10:44:42+00:00","og_image":[{"width":1460,"height":730,"url":"https:\/\/kinqsta.com\/pt\/wp-content\/uploads\/sites\/3\/2024\/07\/supercharging-wordpress-with-htmx.jpg","type":"image\/jpeg"}],"author":"Jeremy Holcombe","twitter_card":"summary_large_image","twitter_description":"Frameworks JavaScript podem ser complexos, o que n\u00e3o \u00e9 o ideal para design web. Aprenda como a biblioteca HTMX pode ser a solu\u00e7\u00e3o para implementar JavaScript!","twitter_image":"https:\/\/kinqsta.com\/pt\/wp-content\/uploads\/sites\/3\/2024\/07\/supercharging-wordpress-with-htmx-1024x512.jpg","twitter_creator":"@kinsta_pt","twitter_site":"@kinsta_pt","twitter_misc":{"Escrito por":"Jeremy Holcombe","Tempo estimado de leitura":"19 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kinqsta.com\/pt\/blog\/wordpress-htmx\/#article","isPartOf":{"@id":"https:\/\/kinqsta.com\/pt\/blog\/wordpress-htmx\/"},"author":{"name":"Jeremy Holcombe","@id":"https:\/\/kinqsta.com\/pt\/#\/schema\/person\/4eee42881d7b5a73ebb4f58dd5223b21"},"headline":"Turbinando o WordPress com HTMX: Como Aprimorar a Plataforma sem Frameworks Complexos","datePublished":"2024-07-19T13:03:31+00:00","dateModified":"2024-07-29T10:44:42+00:00","mainEntityOfPage":{"@id":"https:\/\/kinqsta.com\/pt\/blog\/wordpress-htmx\/"},"wordCount":3448,"commentCount":0,"publisher":{"@id":"https:\/\/kinqsta.com\/pt\/#organization"},"image":{"@id":"https:\/\/kinqsta.com\/pt\/blog\/wordpress-htmx\/#primaryimage"},"thumbnailUrl":"https:\/\/kinqsta.com\/pt\/wp-content\/uploads\/sites\/3\/2024\/07\/supercharging-wordpress-with-htmx.jpg","inLanguage":"pt-PT","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/kinqsta.com\/pt\/blog\/wordpress-htmx\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/kinqsta.com\/pt\/blog\/wordpress-htmx\/","url":"https:\/\/kinqsta.com\/pt\/blog\/wordpress-htmx\/","name":"Turbinando o WordPress com HTMX - Kinsta\u00ae","isPartOf":{"@id":"https:\/\/kinqsta.com\/pt\/#website"},"primaryImageOfPage":{"@id":"https:\/\/kinqsta.com\/pt\/blog\/wordpress-htmx\/#primaryimage"},"image":{"@id":"https:\/\/kinqsta.com\/pt\/blog\/wordpress-htmx\/#primaryimage"},"thumbnailUrl":"https:\/\/kinqsta.com\/pt\/wp-content\/uploads\/sites\/3\/2024\/07\/supercharging-wordpress-with-htmx.jpg","datePublished":"2024-07-19T13:03:31+00:00","dateModified":"2024-07-29T10:44:42+00:00","description":"Frameworks JavaScript podem ser complexos, o que n\u00e3o \u00e9 o ideal para design web. Aprenda como a biblioteca HTMX pode ser a solu\u00e7\u00e3o para implementar JavaScript!","breadcrumb":{"@id":"https:\/\/kinqsta.com\/pt\/blog\/wordpress-htmx\/#breadcrumb"},"inLanguage":"pt-PT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kinqsta.com\/pt\/blog\/wordpress-htmx\/"]}]},{"@type":"ImageObject","inLanguage":"pt-PT","@id":"https:\/\/kinqsta.com\/pt\/blog\/wordpress-htmx\/#primaryimage","url":"https:\/\/kinqsta.com\/pt\/wp-content\/uploads\/sites\/3\/2024\/07\/supercharging-wordpress-with-htmx.jpg","contentUrl":"https:\/\/kinqsta.com\/pt\/wp-content\/uploads\/sites\/3\/2024\/07\/supercharging-wordpress-with-htmx.jpg","width":1460,"height":730},{"@type":"BreadcrumbList","@id":"https:\/\/kinqsta.com\/pt\/blog\/wordpress-htmx\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/kinqsta.com\/pt\/"},{"@type":"ListItem","position":2,"name":"Desenvolvimento WordPress","item":"https:\/\/kinqsta.com\/pt\/topicos\/desenvolvimento-wordpress\/"},{"@type":"ListItem","position":3,"name":"Turbinando o WordPress com HTMX: Como Aprimorar a Plataforma sem Frameworks Complexos"}]},{"@type":"WebSite","@id":"https:\/\/kinqsta.com\/pt\/#website","url":"https:\/\/kinqsta.com\/pt\/","name":"Kinsta\u00ae","description":"Solu\u00e7\u00f5es de hospedagem Premium, r\u00e1pida e segura","publisher":{"@id":"https:\/\/kinqsta.com\/pt\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/kinqsta.com\/pt\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pt-PT"},{"@type":"Organization","@id":"https:\/\/kinqsta.com\/pt\/#organization","name":"Kinsta","url":"https:\/\/kinqsta.com\/pt\/","logo":{"@type":"ImageObject","inLanguage":"pt-PT","@id":"https:\/\/kinqsta.com\/pt\/#\/schema\/logo\/image\/","url":"https:\/\/kinqsta.com\/pt\/wp-content\/uploads\/sites\/3\/2023\/12\/kinsta-logo.jpeg","contentUrl":"https:\/\/kinqsta.com\/pt\/wp-content\/uploads\/sites\/3\/2023\/12\/kinsta-logo.jpeg","width":500,"height":500,"caption":"Kinsta"},"image":{"@id":"https:\/\/kinqsta.com\/pt\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/kinstapt\/","https:\/\/x.com\/kinsta_pt","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:\/\/kinqsta.com\/pt\/#\/schema\/person\/4eee42881d7b5a73ebb4f58dd5223b21","name":"Jeremy Holcombe","image":{"@type":"ImageObject","inLanguage":"pt-PT","@id":"https:\/\/kinqsta.com\/pt\/#\/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:\/\/kinqsta.com\/pt\/blog\/author\/jeremyholcombe\/"}]}},"acf":[],"_links":{"self":[{"href":"https:\/\/kinqsta.com\/pt\/wp-json\/wp\/v2\/posts\/69034","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kinqsta.com\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kinqsta.com\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kinqsta.com\/pt\/wp-json\/wp\/v2\/users\/199"}],"replies":[{"embeddable":true,"href":"https:\/\/kinqsta.com\/pt\/wp-json\/wp\/v2\/comments?post=69034"}],"version-history":[{"count":12,"href":"https:\/\/kinqsta.com\/pt\/wp-json\/wp\/v2\/posts\/69034\/revisions"}],"predecessor-version":[{"id":69117,"href":"https:\/\/kinqsta.com\/pt\/wp-json\/wp\/v2\/posts\/69034\/revisions\/69117"}],"alternate":[{"embeddable":true,"hreflang":"en","title":"English","href":"https:\/\/kinqsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/69034\/translations\/en"},{"embeddable":true,"hreflang":"it","title":"Italian","href":"https:\/\/kinqsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/69034\/translations\/it"},{"embeddable":true,"hreflang":"pt","title":"Portuguese","href":"https:\/\/kinqsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/69034\/translations\/pt"},{"embeddable":true,"hreflang":"fr","title":"French","href":"https:\/\/kinqsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/69034\/translations\/fr"},{"embeddable":true,"hreflang":"de","title":"German","href":"https:\/\/kinqsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/69034\/translations\/de"},{"embeddable":true,"hreflang":"ja","title":"Japanese","href":"https:\/\/kinqsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/69034\/translations\/jp"},{"embeddable":true,"hreflang":"nl","title":"Dutch","href":"https:\/\/kinqsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/69034\/translations\/nl"},{"embeddable":true,"hreflang":"es","title":"Spanish","href":"https:\/\/kinqsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/69034\/translations\/es"},{"href":"https:\/\/kinqsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/69034\/tree"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kinqsta.com\/pt\/wp-json\/wp\/v2\/media\/69035"}],"wp:attachment":[{"href":"https:\/\/kinqsta.com\/pt\/wp-json\/wp\/v2\/media?parent=69034"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kinqsta.com\/pt\/wp-json\/wp\/v2\/tags?post=69034"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/kinqsta.com\/pt\/wp-json\/wp\/v2\/topic?post=69034"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}