{"id":43860,"date":"2021-08-17T15:20:20","date_gmt":"2021-08-17T13:20:20","guid":{"rendered":"https:\/\/kinqsta.com\/?p=4256"},"modified":"2025-01-31T10:52:32","modified_gmt":"2025-01-31T13:52:32","slug":"wordpress-http-api-parte-2","status":"publish","type":"post","link":"https:\/\/kinqsta.com\/pt\/blog\/wordpress-http-api-parte-2\/","title":{"rendered":"Um Guia para HTTP e o WordPress HTTP API &#8211; Parte 2"},"content":{"rendered":"<p><a href=\"https:\/\/kinqsta.com\/pt\/blog\/wordpress-http-api-parte-1\/\">Na parte 1 deste guia<\/a>, eu dei uma olhada na API HTTP em geral. Aprendemos o que \u00e9 HTTP, falamos sobre a estrutura das solicita\u00e7\u00f5es e respostas HTTP e como os tipos de a\u00e7\u00e3o e URLs se unem para determinar o que voc\u00ea recebe em troca de sua solicita\u00e7\u00e3o. Neste post, vamos dar uma olhada na API HTTP do WordPress.<\/p>\n<ul>\n<li><a href=\"#wordpress-http-api\">O WordPress HTTP API<\/a><\/li>\n<li><a href=\"#making-requests\">Fazendo pedidos<\/a><\/li>\n<li><a href=\"#accessing-github-api\">Acesso ao Github API<\/a><\/li>\n<\/ul>\n<h2 id=\"wordpress-http-api\">O WordPress HTTP API<\/h2>\n<p>Desde da vers\u00e3o 2.7 o <a href=\"https:\/\/kinqsta.com\/pt\/blog\/wordpress-http-api\/\">WordPress tem uma API para lidar com HTTP<\/a>. Ela \u00e9 composta de 9 fun\u00e7\u00f5es, das quais voc\u00ea provavelmente s\u00f3 usar\u00e1 um casal. As fun\u00e7\u00f5es podem ser arquivadas em dois grupos distintos &#8211; um para fazer solicita\u00e7\u00f5es, outro para ler resultados.<\/p>\n<p><code>wp_remote_get()<\/code>, <code>wp_remote_post()<\/code>, <code>wp_remote_head()<\/code> usam os m\u00e9todos GET, POST e HEAD respectivamente para solicitar dados de uma determinada URL. A fun\u00e7\u00e3o \u00a0<code>wp_remote_request()<\/code> \u00e9 uma fun\u00e7\u00e3o geral que permite especificar uma URL e um m\u00e9todo para acompanh\u00e1-la.<\/p>\n<p>As fun\u00e7\u00f5es usadas para a leitura das respostas s\u00e3o descritas de forma semelhante. \u00a0<code>wp_remote_retrieve_body()<\/code> recebe o corpo da resposta, a fun\u00e7\u00e3o <code>wp_remote_retrieve_header()<\/code> recebe um cabe\u00e7alho nomeado. A fun\u00e7\u00e3o \u00a0<code>wp_remote_retrieve_headers()<\/code> retorna todos os cabe\u00e7alhos em forma de array, <code>wp_remote_retrieve_response_code()<\/code> fornece o c\u00f3digo de resposta e <code>wp_remote_retrieve_response_message()<\/code> retorna a mensagem de resposta.<\/p>\n<p>Isso \u00e9 basicamente tudo o que existe, tudo o que precisamos saber \u00e9 como especificar cabe\u00e7alhos para fazer os pedidos adequados.<\/p>\n<h2 id=\"making-requests\">Fazendo pedidos<\/h2>\n<p>Vamos usar a fun\u00e7\u00e3o <code>wp_remote_get()<\/code> para fazer um pedido. Vamos usar o primeiro par\u00e2metro para definir a URL e o segundo para adicionar argumentos. Voc\u00ea pode encontrar o conjunto completo de par\u00e2metros suportados no <a href=\"https:\/\/codex.wordpress.org\/Function_Reference\/wp_remote_get\">The Codex<\/a>, vou me concentrar nas informa\u00e7\u00f5es de cabe\u00e7alho aqui.<\/p>\n<p>Para obter uma mensagem de status do usu\u00e1rio no Twitter, voc\u00ea precisar\u00e1 usar o caminho <code>statuses\/user_timeline.json<\/code> junto com a URL <code>https:\/\/api.twitter.com\/1.1<\/code> e passar um token portador para autentica\u00e7\u00e3o &#8211; que eu gerei anteriormente. O token portador precisa ser adicionado como um cabe\u00e7alho de autoriza\u00e7\u00e3o na forma de <code>Bearer [TOKEN]<\/code>.<\/p>\n<pre><code>$token = 'Sijbwrf82wdaBief'; \n$response = wp_remote_get('https:\/\/api.twitter.com\/1.1\/statuses\/user_timeline.json?screen_name=kinsta', array(\n    'headers' =&gt; array(\n        'Authorization' =&gt; 'Bearer ' . $token\n    ),\n));<\/code><\/pre>\n<p>Fazendo este pedido devolve uma riqueza de informa\u00e7\u00f5es que podem ser obtidas atrav\u00e9s da impress\u00e3o da vari\u00e1vel <code>$response<\/code>. Voc\u00ea tamb\u00e9m pode usar as fun\u00e7\u00f5es do tipo <code>wp_remote_retrieve<\/code> para obter uma parte da resposta.<\/p>\n<p>Na maioria das vezes, o corpo cont\u00e9m as informa\u00e7\u00f5es necess\u00e1rias, geralmente no formato JSON. Em PHP, podemos converter isso em uma matriz com facilidade:<\/p>\n<pre><code>$data = json_decode( $response['body'], true ) <\/code><\/pre>\n<h2 id=\"accessing-github-api\">Acesso ao Github API<\/h2>\n<p>Vamos construir um exemplo r\u00e1pido que listar\u00e1 nosso mais recente repos Github em um widget WordPress. Primeiro, voc\u00ea precisar\u00e1 entrar no Github e ir para seu perfil, edit\u00e1-lo e ir para &#8220;tokens de acesso pessoal&#8221; onde voc\u00ea pode gerar um token.<\/p>\n<figure id=\"attachment_4257\" aria-describedby=\"caption-attachment-4257\" style=\"width: 763px\" class=\"wp-caption alignnone\"><a href=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2015\/08\/Screen-Shot-2015-08-31-at-14.45.52.png\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-4257\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2015\/08\/Screen-Shot-2015-08-31-at-14.45.52.png\" alt=\"Github Access Tokens\" width=\"763\" height=\"252\"><\/a><figcaption id=\"caption-attachment-4257\" class=\"wp-caption-text\">Acesso aos Tokens Github<\/figcaption><\/figure>\n<p>Como pr\u00f3ximo passo, vamos criar um modelo de widget vazio. Este widget ter\u00e1 duas op\u00e7\u00f5es: um lugar para voc\u00ea adicionar seu token API e um t\u00edtulo. Este n\u00e3o \u00e9 o melhor m\u00e9todo, pois salva seu token no <a href=\"https:\/\/kinqsta.com\/pt\/blog\/banco-de-dados-wordpress\/\">banco de dados<\/a>, mas \u00e9 bom para nossos prop\u00f3sitos de exemplo.<\/p>\n<pre><code class=\"language-php\">class My_Github_Widget extends WP_Widget {\n\n\tpublic function __construct() {\n\t\tparent::__construct(\n\t\t\t'my_github_widget',\n\t\t\t'My Github Repos',\n\t\t\tarray( 'description' =&gt; 'A widget that showcases your Github repos' )\n\t\t);\n\t}\n\n\tpublic function widget( $args, $instance ) {\n\t\t\/\/ Widget output\n\t}\n\n\tpublic function form( $instance ) {\n\t\t$token = ! empty( $instance['token'] ) ? $instance['token'] : '';\n\t\t$title = ! empty( $instance['title'] ) ? $instance['title'] : 'From Github';\n\t\t?&gt;<\/code><\/pre>\n<pre><code>&lt;label for=\"get_field_id( 'title' ); ?&gt;\"&gt;Title &lt;input class=\"widefat\" id=\"get_field_id( 'title' ); ?&gt;\" name=\"get_field_name( 'title' ); ?&gt;\" type=\"text\" value=\"\"&gt;\n\n&lt;label for=\"get_field_id( 'token' ); ?&gt;\"&gt;Github API Token &lt;input class=\"widefat\" id=\"get_field_id( 'token' ); ?&gt;\" name=\"get_field_name( 'token' ); ?&gt;\" type=\"text\" value=\"\"&gt;\n\n&lt;?php } }<\/code><\/pre>\n<p>N\u00e3o quero me aprofundar muito na forma como os widgets s\u00e3o criados aqui. Se voc\u00ea quiser saber mais, d\u00ea uma olhada no guia <a href=\"https:\/\/codex.wordpress.org\/Widgets_API\">Widgets API<\/a> no Codex. A parte importante \u00e9 que o conte\u00fado do m\u00e9todo\u00a0<code>widget()<\/code> produzir\u00e1 o conte\u00fado de nosso widget. Dentro dessa fun\u00e7\u00e3o, vamos nos conectar ao Github usando uma solicita\u00e7\u00e3o HTTP e depois formatar e emitir a resposta. Eis como tudo isso \u00e9 feito &#8211; todo o c\u00f3digo a seguir vai para o m\u00e9todo <code>widget()<\/code>.<\/p>\n<pre><code class=\"language-php\">echo $args['before_widget']; \n\nif ( ! empty( $instance['title'] ) ) { \n  echo $args['before_title'] . apply_filters( 'widget_title', $instance['title'] ). $args['after_title']; \n} \n\n$args = array( \n  'headers' =&gt; array( \n    'Accept' =&gt; 'application\/vnd.github.v3+json', \n    'Authorization' =&gt; 'token 3f4f654ab31c2f15e839c74c952e5de2f562f1ee' \n  ) \n); \n\n$response = wp_remote_get( 'https:\/\/api.github.com\/user\/repos', $args ); \n$repos = json_decode( $response['body'], true ); \n\nif( !empty( $repos ) ) { \n  echo '&lt;ul&gt;'; \n  foreach( $repos as $repo ) { \n    echo '&lt;li&gt;&lt;a href=\"' . $repo['url'] . '\" target=\"_blank\"&gt;' . $repo['name'] . '&lt;\/a&gt;&lt;\/li&gt;'; \n  } \n  echo '&lt;\/ul&gt;'; \n} \n\necho $args['after_widget'];<\/code><\/pre>\n<p>Ele come\u00e7a com a simples adi\u00e7\u00e3o do elemento e t\u00edtulo do inv\u00f3lucro do widget na parte superior e termina fechando o inv\u00f3lucro do widget, a se\u00e7\u00e3o principal do c\u00f3digo fica entre os dois.<\/p>\n<p>Primeiro montei meus cabe\u00e7alhos de solicita\u00e7\u00e3o HTTP. A primeira pergunta pode ser: como posso saber quais par\u00e2metros acrescentar? O cabe\u00e7alho <code>Authorization<\/code> \u00e9 a parte mais importante, li isso na se\u00e7\u00e3o <a href=\"https:\/\/developer.github.com\/v3\/#authentication\">Authentication<\/a> dos documentos da API.<\/p>\n<p>O cabe\u00e7alho <code>Accept<\/code> n\u00e3o \u00e9 necess\u00e1rio, mas no topo da mesma p\u00e1gina do documento o guia o encoraja a fornecer isto.<\/p>\n<p>Em seguida, uso <code>json_decode()<\/code> no corpo da resposta e simplesmente percorro a matriz resultante, criando uma lista de links.<\/p>\n<h2>Pr\u00f3ximos passos<\/h2>\n<p>Se voc\u00ea acha que isso foi f\u00e1cil, est\u00e1 totalmente certo! A parte dif\u00edcil \u00e9 garantir que voc\u00ea tenha todos os \u00e2ngulos cobertos sem desperdi\u00e7ar recursos. H\u00e1 duas quest\u00f5es com o c\u00f3digo que exigiriam nossa aten\u00e7\u00e3o imediata.<\/p>\n<p>Se houver algum problema com o API &#8211; que pode incluir erros desconhecidos, contas com taxas limitadas e assim por diante &#8211; podemos nos deparar com um grande erro. Estamos apenas verificando se o corpo est\u00e1 vazio ou n\u00e3o antes de mostrarmos a lista.<\/p>\n<p>Se tivermos um erro em nossas m\u00e3os, \u00e9 prov\u00e1vel que o corpo contenha informa\u00e7\u00f5es de erro, portanto, tamb\u00e9m n\u00e3o estaria vazio neste caso. \u00c9 prov\u00e1vel que listar\u00edamos os elementos da resposta ao erro, mas como estes n\u00e3o teriam <code>url<\/code> e propriedades de <code>name<\/code>, acabar\u00edamos com elementos de lista vazia e avisos PHP.<\/p>\n<p>A segunda quest\u00e3o \u00e9 que isto \u00e9 apenas um desperd\u00edcio. Estamos nos conectando a um servi\u00e7o externo em cada carregamento de p\u00e1gina que pode ter um custo em nossos servidores e pode fazer com que a conta seja limitada no Github. Mesmo que este n\u00e3o seja o caso, qual a probabilidade de sua lista de reporte Github mudar entre duas visualiza\u00e7\u00f5es de p\u00e1gina, e qual a import\u00e2ncia de ter at\u00e9 a segunda informa\u00e7\u00e3o aqui?<\/p>\n<p>Eu recomendaria pessoalmente o uso de <a href=\"https:\/\/codex.wordpress.org\/Transients_API\">transientes<\/a> em um caso como este. Um transiente permite armazenar a resposta do pedido com um tempo de expira\u00e7\u00e3o. Se voc\u00ea definir a expira\u00e7\u00e3o para um dia, os dados ser\u00e3o recuperados do Github uma vez, ent\u00e3o diretamente de seu banco de dados durante as pr\u00f3ximas 24 horas. Ap\u00f3s a expira\u00e7\u00e3o, os dados s\u00e3o recuperados novamente do Github e salvos no banco de dados.<\/p>\n<p>Isto reduz suas chamadas API de uma por p\u00e1gina para uma por dia, o que \u00e9 uma enorme melhoria e tamb\u00e9m n\u00e3o \u00e9 uma grande mudan\u00e7a.<\/p>\n<h2>Resumo<\/h2>\n<p>O WordPress facilita a intera\u00e7\u00e3o com APIs de toda a web. O uso de um par de fun\u00e7\u00f5es integradas permitir\u00e1 que voc\u00ea obtenha dados mais ricos e mais relevantes para seus usu\u00e1rios.<\/p>\n<p>Juntamente com a sanitiza\u00e7\u00e3o, verifica\u00e7\u00e3o de erros e um mecanismo de cache voc\u00ea pode construir uma aplica\u00e7\u00e3o eficiente que n\u00e3o s\u00f3 \u00e9 mais \u00fatil, mas que consome menos recursos do que voc\u00ea poderia imaginar.<\/p>\n<p>Se voc\u00ea usou o WordPress HTTP API para conectar o WordPress com um terceiro API nos avise, seria \u00f3timo ouvir sobre seu trabalho!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Neste artigo, vou dar uma olhada em como voc\u00ea pode lidar facilmente com solicita\u00e7\u00f5es HTTP com a ajuda da API HTTP do WordPress. Tamb\u00e9m vamos olhar para um exemplo simples usando a API do Github, se voc\u00ea quiser seguir, obtenha uma conta gr\u00e1tis!<\/p>\n","protected":false},"author":18,"featured_media":43864,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_kinsta_gated_content":false,"_kinsta_gated_content_redirect":"","footnotes":""},"tags":[367,30],"topic":[1026],"class_list":["post-43860","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","tag-api","tag-wordpress","topic-desenvolvimento-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>Um Guia para HTTP e o WordPress HTTP API - Parte 2<\/title>\n<meta name=\"description\" content=\"O WordPress HTTP API nos permite conectar a APIs de terceiros como Twitter, Facebook, Mailchimp e muito mais. Continue lendo para saber como!\" \/>\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-http-api-parte-2\/\" \/>\n<meta property=\"og:locale\" content=\"pt_PT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Um Guia para HTTP e o WordPress HTTP API - Parte 2\" \/>\n<meta property=\"og:description\" content=\"O WordPress HTTP API nos permite conectar a APIs de terceiros como Twitter, Facebook, Mailchimp e muito mais. Continue lendo para saber como!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kinqsta.com\/pt\/blog\/wordpress-http-api-parte-2\/\" \/>\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=\"2021-08-17T13:20:20+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-01-31T13:52:32+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/kinqsta.com\/pt\/wp-content\/uploads\/sites\/3\/2021\/08\/wordpress-http-api-it.jpeg\" \/>\n\t<meta property=\"og:image:width\" content=\"800\" \/>\n\t<meta property=\"og:image:height\" content=\"500\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Daniel Pataki\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:description\" content=\"O WordPress HTTP API nos permite conectar a APIs de terceiros como Twitter, Facebook, Mailchimp e muito mais. Continue lendo para saber como!\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/kinqsta.com\/pt\/wp-content\/uploads\/sites\/3\/2021\/08\/wordpress-http-api-it.jpeg\" \/>\n<meta name=\"twitter:creator\" content=\"@danielpataki\" \/>\n<meta name=\"twitter:site\" content=\"@kinsta_pt\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Daniel Pataki\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tempo estimado de leitura\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 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-http-api-parte-2\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/kinqsta.com\/pt\/blog\/wordpress-http-api-parte-2\/\"},\"author\":{\"name\":\"Daniel Pataki\",\"@id\":\"https:\/\/kinqsta.com\/pt\/#\/schema\/person\/b162216499225e1a4cdd35518f8ef0ff\"},\"headline\":\"Um Guia para HTTP e o WordPress HTTP API &#8211; Parte 2\",\"datePublished\":\"2021-08-17T13:20:20+00:00\",\"dateModified\":\"2025-01-31T13:52:32+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/kinqsta.com\/pt\/blog\/wordpress-http-api-parte-2\/\"},\"wordCount\":1142,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/kinqsta.com\/pt\/#organization\"},\"image\":{\"@id\":\"https:\/\/kinqsta.com\/pt\/blog\/wordpress-http-api-parte-2\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinqsta.com\/pt\/wp-content\/uploads\/sites\/3\/2021\/08\/wordpress-http-api-it.jpeg\",\"keywords\":[\"API\",\"WordPress\"],\"articleSection\":[\"Desenvolvimento WordPress\"],\"inLanguage\":\"pt-PT\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/kinqsta.com\/pt\/blog\/wordpress-http-api-parte-2\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/kinqsta.com\/pt\/blog\/wordpress-http-api-parte-2\/\",\"url\":\"https:\/\/kinqsta.com\/pt\/blog\/wordpress-http-api-parte-2\/\",\"name\":\"Um Guia para HTTP e o WordPress HTTP API - Parte 2\",\"isPartOf\":{\"@id\":\"https:\/\/kinqsta.com\/pt\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/kinqsta.com\/pt\/blog\/wordpress-http-api-parte-2\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/kinqsta.com\/pt\/blog\/wordpress-http-api-parte-2\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinqsta.com\/pt\/wp-content\/uploads\/sites\/3\/2021\/08\/wordpress-http-api-it.jpeg\",\"datePublished\":\"2021-08-17T13:20:20+00:00\",\"dateModified\":\"2025-01-31T13:52:32+00:00\",\"description\":\"O WordPress HTTP API nos permite conectar a APIs de terceiros como Twitter, Facebook, Mailchimp e muito mais. Continue lendo para saber como!\",\"breadcrumb\":{\"@id\":\"https:\/\/kinqsta.com\/pt\/blog\/wordpress-http-api-parte-2\/#breadcrumb\"},\"inLanguage\":\"pt-PT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/kinqsta.com\/pt\/blog\/wordpress-http-api-parte-2\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-PT\",\"@id\":\"https:\/\/kinqsta.com\/pt\/blog\/wordpress-http-api-parte-2\/#primaryimage\",\"url\":\"https:\/\/kinqsta.com\/pt\/wp-content\/uploads\/sites\/3\/2021\/08\/wordpress-http-api-it.jpeg\",\"contentUrl\":\"https:\/\/kinqsta.com\/pt\/wp-content\/uploads\/sites\/3\/2021\/08\/wordpress-http-api-it.jpeg\",\"width\":800,\"height\":500,\"caption\":\"wordpress-http-api-pt\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/kinqsta.com\/pt\/blog\/wordpress-http-api-parte-2\/#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\":\"Um Guia para HTTP e o WordPress HTTP API &#8211; Parte 2\"}]},{\"@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\/b162216499225e1a4cdd35518f8ef0ff\",\"name\":\"Daniel Pataki\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-PT\",\"@id\":\"https:\/\/kinqsta.com\/pt\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/2a44c1ab807766aeaa5c8d76d4c5ea66?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/2a44c1ab807766aeaa5c8d76d4c5ea66?s=96&d=mm&r=g\",\"caption\":\"Daniel Pataki\"},\"description\":\"Hi, my name is Daniel, I'm the CTO here at Kinsta. You may know me from Smashing Magazine, WPMU Dev, Tuts+ and other WordPress\/Development magazines. Aside from WordPress and PHP I spend most of my time around Node, React, GraphQL and other technologies in the Javascript space. When not working on making the best hosting solution in the Universe I collect board games, play table football in the office, travel or play guitar and sing in a pretty bad band.\",\"sameAs\":[\"http:\/\/danielpataki.com\",\"https:\/\/x.com\/danielpataki\"],\"url\":\"https:\/\/kinqsta.com\/pt\/blog\/author\/danielpataki\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Um Guia para HTTP e o WordPress HTTP API - Parte 2","description":"O WordPress HTTP API nos permite conectar a APIs de terceiros como Twitter, Facebook, Mailchimp e muito mais. Continue lendo para saber como!","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-http-api-parte-2\/","og_locale":"pt_PT","og_type":"article","og_title":"Um Guia para HTTP e o WordPress HTTP API - Parte 2","og_description":"O WordPress HTTP API nos permite conectar a APIs de terceiros como Twitter, Facebook, Mailchimp e muito mais. Continue lendo para saber como!","og_url":"https:\/\/kinqsta.com\/pt\/blog\/wordpress-http-api-parte-2\/","og_site_name":"Kinsta\u00ae","article_publisher":"https:\/\/www.facebook.com\/kinstapt\/","article_published_time":"2021-08-17T13:20:20+00:00","article_modified_time":"2025-01-31T13:52:32+00:00","og_image":[{"width":800,"height":500,"url":"https:\/\/kinqsta.com\/pt\/wp-content\/uploads\/sites\/3\/2021\/08\/wordpress-http-api-it.jpeg","type":"image\/jpeg"}],"author":"Daniel Pataki","twitter_card":"summary_large_image","twitter_description":"O WordPress HTTP API nos permite conectar a APIs de terceiros como Twitter, Facebook, Mailchimp e muito mais. Continue lendo para saber como!","twitter_image":"https:\/\/kinqsta.com\/pt\/wp-content\/uploads\/sites\/3\/2021\/08\/wordpress-http-api-it.jpeg","twitter_creator":"@danielpataki","twitter_site":"@kinsta_pt","twitter_misc":{"Escrito por":"Daniel Pataki","Tempo estimado de leitura":"6 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kinqsta.com\/pt\/blog\/wordpress-http-api-parte-2\/#article","isPartOf":{"@id":"https:\/\/kinqsta.com\/pt\/blog\/wordpress-http-api-parte-2\/"},"author":{"name":"Daniel Pataki","@id":"https:\/\/kinqsta.com\/pt\/#\/schema\/person\/b162216499225e1a4cdd35518f8ef0ff"},"headline":"Um Guia para HTTP e o WordPress HTTP API &#8211; Parte 2","datePublished":"2021-08-17T13:20:20+00:00","dateModified":"2025-01-31T13:52:32+00:00","mainEntityOfPage":{"@id":"https:\/\/kinqsta.com\/pt\/blog\/wordpress-http-api-parte-2\/"},"wordCount":1142,"commentCount":0,"publisher":{"@id":"https:\/\/kinqsta.com\/pt\/#organization"},"image":{"@id":"https:\/\/kinqsta.com\/pt\/blog\/wordpress-http-api-parte-2\/#primaryimage"},"thumbnailUrl":"https:\/\/kinqsta.com\/pt\/wp-content\/uploads\/sites\/3\/2021\/08\/wordpress-http-api-it.jpeg","keywords":["API","WordPress"],"articleSection":["Desenvolvimento WordPress"],"inLanguage":"pt-PT","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/kinqsta.com\/pt\/blog\/wordpress-http-api-parte-2\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/kinqsta.com\/pt\/blog\/wordpress-http-api-parte-2\/","url":"https:\/\/kinqsta.com\/pt\/blog\/wordpress-http-api-parte-2\/","name":"Um Guia para HTTP e o WordPress HTTP API - Parte 2","isPartOf":{"@id":"https:\/\/kinqsta.com\/pt\/#website"},"primaryImageOfPage":{"@id":"https:\/\/kinqsta.com\/pt\/blog\/wordpress-http-api-parte-2\/#primaryimage"},"image":{"@id":"https:\/\/kinqsta.com\/pt\/blog\/wordpress-http-api-parte-2\/#primaryimage"},"thumbnailUrl":"https:\/\/kinqsta.com\/pt\/wp-content\/uploads\/sites\/3\/2021\/08\/wordpress-http-api-it.jpeg","datePublished":"2021-08-17T13:20:20+00:00","dateModified":"2025-01-31T13:52:32+00:00","description":"O WordPress HTTP API nos permite conectar a APIs de terceiros como Twitter, Facebook, Mailchimp e muito mais. Continue lendo para saber como!","breadcrumb":{"@id":"https:\/\/kinqsta.com\/pt\/blog\/wordpress-http-api-parte-2\/#breadcrumb"},"inLanguage":"pt-PT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kinqsta.com\/pt\/blog\/wordpress-http-api-parte-2\/"]}]},{"@type":"ImageObject","inLanguage":"pt-PT","@id":"https:\/\/kinqsta.com\/pt\/blog\/wordpress-http-api-parte-2\/#primaryimage","url":"https:\/\/kinqsta.com\/pt\/wp-content\/uploads\/sites\/3\/2021\/08\/wordpress-http-api-it.jpeg","contentUrl":"https:\/\/kinqsta.com\/pt\/wp-content\/uploads\/sites\/3\/2021\/08\/wordpress-http-api-it.jpeg","width":800,"height":500,"caption":"wordpress-http-api-pt"},{"@type":"BreadcrumbList","@id":"https:\/\/kinqsta.com\/pt\/blog\/wordpress-http-api-parte-2\/#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":"Um Guia para HTTP e o WordPress HTTP API &#8211; Parte 2"}]},{"@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\/b162216499225e1a4cdd35518f8ef0ff","name":"Daniel Pataki","image":{"@type":"ImageObject","inLanguage":"pt-PT","@id":"https:\/\/kinqsta.com\/pt\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/2a44c1ab807766aeaa5c8d76d4c5ea66?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/2a44c1ab807766aeaa5c8d76d4c5ea66?s=96&d=mm&r=g","caption":"Daniel Pataki"},"description":"Hi, my name is Daniel, I'm the CTO here at Kinsta. You may know me from Smashing Magazine, WPMU Dev, Tuts+ and other WordPress\/Development magazines. Aside from WordPress and PHP I spend most of my time around Node, React, GraphQL and other technologies in the Javascript space. When not working on making the best hosting solution in the Universe I collect board games, play table football in the office, travel or play guitar and sing in a pretty bad band.","sameAs":["http:\/\/danielpataki.com","https:\/\/x.com\/danielpataki"],"url":"https:\/\/kinqsta.com\/pt\/blog\/author\/danielpataki\/"}]}},"acf":[],"_links":{"self":[{"href":"https:\/\/kinqsta.com\/pt\/wp-json\/wp\/v2\/posts\/43860","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\/18"}],"replies":[{"embeddable":true,"href":"https:\/\/kinqsta.com\/pt\/wp-json\/wp\/v2\/comments?post=43860"}],"version-history":[{"count":10,"href":"https:\/\/kinqsta.com\/pt\/wp-json\/wp\/v2\/posts\/43860\/revisions"}],"predecessor-version":[{"id":53111,"href":"https:\/\/kinqsta.com\/pt\/wp-json\/wp\/v2\/posts\/43860\/revisions\/53111"}],"alternate":[{"embeddable":true,"hreflang":"en","title":"English","href":"https:\/\/kinqsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/43860\/translations\/en"},{"embeddable":true,"hreflang":"de","title":"German","href":"https:\/\/kinqsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/43860\/translations\/de"},{"embeddable":true,"hreflang":"it","title":"Italian","href":"https:\/\/kinqsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/43860\/translations\/it"},{"embeddable":true,"hreflang":"es","title":"Spanish","href":"https:\/\/kinqsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/43860\/translations\/es"},{"embeddable":true,"hreflang":"pt","title":"Portuguese","href":"https:\/\/kinqsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/43860\/translations\/pt"},{"embeddable":true,"hreflang":"fr","title":"French","href":"https:\/\/kinqsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/43860\/translations\/fr"},{"href":"https:\/\/kinqsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/43860\/tree"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kinqsta.com\/pt\/wp-json\/wp\/v2\/media\/43864"}],"wp:attachment":[{"href":"https:\/\/kinqsta.com\/pt\/wp-json\/wp\/v2\/media?parent=43860"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kinqsta.com\/pt\/wp-json\/wp\/v2\/tags?post=43860"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/kinqsta.com\/pt\/wp-json\/wp\/v2\/topic?post=43860"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}