{"id":225889,"date":"2022-08-16T13:20:00","date_gmt":"2022-08-16T10:20:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=225889"},"modified":"2022-11-09T01:28:26","modified_gmt":"2022-11-08T22:28:26","slug":"loop-wordpress-o-que-e-e-o-que-voce-precisa-saber-sobre-ele","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/pt-pt\/loop-wordpress-o-que-e-e-o-que-voce-precisa-saber-sobre-ele\/","title":{"rendered":"Loop WordPress: O que \u00e9 e o que voc\u00ea precisa saber sobre ele"},"content":{"rendered":"<p>Se voc\u00ea \u00e9 um desenvolvedor de temas WordPress, um programador ou apenas um entusiasta geral ansioso para aprender o que \u00e9 um loop WordPress, este artigo \u00e9 para voc\u00ea! Sem mais delongas, vamos come\u00e7ar com o b\u00e1sico: O que \u00e9 um loop?<\/p>\n<p>O loop do WordPress \u00e9 um c\u00f3digo PHP que mostra os posts do WordPress ou simplesmente; ele \u00e9 usado em v\u00e1rios temas para exibir postagens em qualquer p\u00e1gina da web. N\u00e3o apenas ele \u00e9 executado na maioria das p\u00e1ginas que voc\u00ea v\u00ea, mas tamb\u00e9m permite modific\u00e1-lo e personaliz\u00e1-lo ao seu gosto.<\/p>\n<p>Esses loops de site podem ser usados \u200b\u200bpara listar postagens por contagem de coment\u00e1rios, mostrar postagens com imagens e assim por diante.<\/p>\n<p>Quando voc\u00ea olha para o loop, pode ver que algumas fun\u00e7\u00f5es s\u00e3o executadas por padr\u00e3o para mostrar as postagens. Os desenvolvedores de temas podem usar essas fun\u00e7\u00f5es e tags de modelo para personalizar como cada postagem no loop \u00e9 exibida.<\/p>\n<p>Essas tags de modelo funcionam apenas dentro do loop padr\u00e3o do WordPress e s\u00e3o usadas para formatar, organizar e publicar dados de postagem.<\/p>\n<p>O loop do WordPress \u00e9, sem d\u00favida, a parte mais crucial do c\u00f3digo do WordPress, e vamos nos aprofundar em como o seu site faz o loop.<\/p>\n<h3>Loop de p\u00e1gina do WordPress para iniciantes<\/h3>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-207555-61e8d679e5a30.jpg\" data-rel=\"lightbox\" ><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-207555-61e8d679e5a30.jpg\" alt=\"Loop WordPress: O que \u00e9 e o que voc\u00ea precisa saber sobre ele\" ><\/a><\/p>\n<p>Como j\u00e1 mencionamos, o post loop \u00e9 um c\u00f3digo que gera todas as informa\u00e7\u00f5es que o WordPress tem sobre um post ou posts. Ele \u00e9 executado em segundo plano em cada post e encontra o banco de dados um por um, o que permite fornecer informa\u00e7\u00f5es sobre todos os posts encontrados.<\/p>\n<p>Aqui est\u00e1 um exemplo de como o WordPress percorre as postagens:<\/p>\n<ol>\n<li>voc\u00ea inicia o loop,<\/li>\n<li>agir com cada postagem ou p\u00e1gina encontrada,<\/li>\n<li>feche o ciclo.<\/li>\n<\/ol>\n<p>Essas tr\u00eas etapas representam a l\u00f3gica b\u00e1sica por tr\u00e1s do loop. A partir deste ponto, voc\u00ea pode ser criativo e filtrar as postagens que encontrou usando a consulta. A consulta informa ao loop o que estamos procurando. No nosso exemplo, ficaria assim:<\/p>\n<ol>\n<li>definir o que estamos procurando,<\/li>\n<li>iniciar o ciclo,<\/li>\n<li>agir com cada postagem ou p\u00e1gina encontrada,<\/li>\n<li>feche o ciclo.<\/li>\n<\/ol>\n<p>Se voc\u00ea tem experi\u00eancia com c\u00f3digo PHP, pode estar familiarizado com a fun\u00e7\u00e3o &#8220;while&quot; que \u00e9 usada em loops para executar a consulta do banco de dados e exibir dinamicamente as informa\u00e7\u00f5es sem precisar inserir cada linha do banco de dados manualmente.<\/p>\n<p>O loop while do WordPress funciona da mesma maneira.<\/p>\n<h3>Exemplo de um loop padr\u00e3o do WordPress<\/h3>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-207555-61e8d67ad790d.jpg\" data-rel=\"lightbox\" ><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-207555-61e8d67ad790d.jpg\" alt=\"Loop WordPress: O que \u00e9 e o que voc\u00ea precisa saber sobre ele\" ><\/a><\/p>\n<p>Abaixo est\u00e1 um exemplo de um loop padr\u00e3o do WordPress que pode ser usado em qualquer p\u00e1gina.<\/p>\n<p><code>&lt;?php if (have_posts() ): ?&gt; &lt;?php while (have_posts() ): the_post() ?&gt; \/\/ Post display here &lt;?php endwhile ?&gt; &lt;?php else: ?&gt; \/\/ Content if there are no posts to show &lt;?php endif ?&gt;<\/code><\/p>\n<p>D\u00ea uma olhada nas fun\u00e7\u00f5es have_posts() e the_post(). O primeiro determina se h\u00e1 algum post para mostrar, e o segundo configura dados e pontos internos que auxiliam a fun\u00e7\u00e3o have_posts().<\/p>\n<p>Se n\u00e3o houver nada para mostrar, a fun\u00e7\u00e3o deve exibir uma mensagem informando aos usu\u00e1rios.<\/p>\n<p>Se houver as postagens que estamos procurando, o loop as exibir\u00e1 uma a uma.<\/p>\n<p>Aqui, tenha um bloco de c\u00f3digo que realmente mostrar\u00e1 as postagens, \u00e9 por nossa conta!<\/p>\n<p>`&lt;?php if (have_posts() ): ?&gt;<br \/>\n&lt;?php while (have_posts() ): the_post() ?&gt;<br \/>\n&lt;div &lt;?php post_class() ?&gt;&gt;<\/p>\n<h2>&lt;a href=&#8221;&gt;<\/h2>\n<p>&lt;div class=&#8217;post-excerpt&#8217;&gt;<br \/>\n&lt;?php the_excerpt() ?&gt;<\/p>\n<p>&lt;div class=&#8217;post-meta&#8217;&gt;<br \/>\n&lt;?php the_time( &#8216;Ym-d&#8217;) ?&gt;<br \/>\n&lt;?php if (has_category() ): ?&gt;<br \/>\n&lt;span class=&#8217;post-categories&#8217;&gt;&lt;?php the_category( &#8216;, &#8216;) ?&gt;<br \/>\n&lt;?php endif ?&gt;<\/p>\n<p>&lt;?php endwhile ?&gt;<br \/>\n&lt;?php else: ?&gt;<\/p>\n<h2>N\u00e3o h\u00e1 postagens aqui<\/h2>\n<p>Deseja voltar para a &lt;a href=&#8221;&gt;p\u00e1gina inicial?<br \/>\n`<\/p>\n<p>O conte\u00fado mostrado aqui \u00e9 determinado pela consulta sobre a qual j\u00e1 falamos, e como esse conte\u00fado \u00e9 mostrado depende do loop. Essa quantidade de personaliza\u00e7\u00e3o \u00e9 incr\u00edvel e \u00e9 o que faz o WordPress se destacar.<\/p>\n<p>Bom trabalho! Agora voc\u00ea sabe o que \u00e9 um post loop!<\/p>\n<p>### Usando c\u00f3digo para alterar a consulta principal<\/p>\n<p>!<a href=\"https:\/\/wpdatatables.com\/wp-content\/uploads\/2018\/04\/wploop-2.jpg\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external\"><\/a><\/p>\n<p>Antes de come\u00e7armos, temos que avis\u00e1-lo que alterar a consulta principal pode ter consequ\u00eancias n\u00e3o intencionais se voc\u00ea n\u00e3o souber o que est\u00e1 fazendo. Tome cuidado ao experimentar!<\/p>\n<p>Temos que olhar para os ganchos se quisermos modificar a funcionalidade principal. Os ganchos nos permitem alterar o comprimento do texto, alterar a tela de login, reformular mensagens de erro, alterar tipos de postagem personalizados e muito mais.<\/p>\n<p><code>add_action( 'pre_get_posts', 'my_exclude_category'); function my_exclude_category( $query) { if ($query-&gt;is_home() &amp;&amp; $query-&gt;is_main_query()) { $query-&gt;set( 'cat', '-92' ); } }<\/code><\/p>\n<p>Observe que usamos o gancho pre_get_post para modificar o par\u00e2metro da consulta principal antes que ela seja executada. O c\u00f3digo acima faz a mesma coisa que o anterior, mas desta vez exclui a categoria 92 da nossa p\u00e1gina inicial. Assim, a consulta principal \u00e9 modificada<\/p>\n<p>D\u00ea uma olhada nas fun\u00e7\u00f5es is_home() e is_main_query(). Eles est\u00e3o aqui para garantir que a consulta seja modificada apenas na p\u00e1gina inicial e se for a consulta principal.<\/p>\n<p>Aqui est\u00e1 outro c\u00f3digo que pode ser \u00fatil em um loop de blog do WordPress.<\/p>\n<p>Digamos que um autor em seu site plagiou parte (ou todo) de seu conte\u00fado e voc\u00ea deseja remover todas as postagens dele permanentemente ou at\u00e9 que o problema seja resolvido.<\/p>\n<p>Isso pode ser feito adicionando um c\u00f3digo como este:<\/p>\n<p><code>add_action( 'pre_get_posts', 'my_exclude_author'); function my_exclude_author( $consulta) { $consulta-&gt;set( 'autor', '-23'); }<\/code><\/p>\n<p>Com esta fun\u00e7\u00e3o condicional, voc\u00ea remove a postagem do autor do seu site e do seu back-end. Voc\u00ea pode encontrar todas as tags condicionais no WordPress Codex. Aqui est\u00e1 como o \u00faltimo c\u00f3digo deve ficar no final:<\/p>\n<p><code>add_action( 'pre_get_posts', 'my_exclude_author'); function my_exclude_author( $query) { if( !is_admin()) { $query-&gt;set( 'author', '-23' ); } }<\/code><\/p>\n<p>### Terminando os pensamentos sobre o loop do WordPress<\/p>\n<p>Usar o loop do WordPress \u00e9 uma \u00f3tima maneira de personalizar suas postagens, p\u00e1ginas ou simplesmente \u2013 seu site. O loop exige que voc\u00ea tenha um entendimento b\u00e1sico de como o WordPress funciona e a l\u00f3gica do c\u00f3digo.<\/p>\n<p>A menos que voc\u00ea queira fazer um teste r\u00e1pido, n\u00e3o recomendamos usar a fun\u00e7\u00e3o query_posts(). Voc\u00ea pode usar v\u00e1rios ganchos caso precise modificar a consulta original. Sempre seja cauteloso ao alterar o c\u00f3digo de loop do WordPress.<\/p>\n<p>Esperamos que este artigo tenha sido um bom primeiro passo para o seu dom\u00ednio do loop do WordPress!<\/p>\n<p>Se voc\u00ea gostou deste artigo sobre o loop do WordPress, voc\u00ea tamb\u00e9m deve ler estes:<\/p>\n<p>\u2013 <a href=\"https:\/\/wordpress.mediadoma.com\/pt-pt\/erro-504-no-wordpress-como-corrigi-lo\/\" title=\"erro 504 no WordPress: como corrigi-lo\">erro 504 no WordPress: como corrigi-lo<\/a><br \/>\n\u2013 <a href=\"https:\/\/wordpress.mediadoma.com\/pt-pt\/12-dicas-para-criar-um-tema-ou-plugin-wordpress-de-sucesso\/\" title=\"12 dicas para criar um plugin premium WordPress bem-sucedido ou Tema\">12 dicas para criar um plugin premium WordPress bem-sucedido ou Tema<\/a><br \/>\n\u2013 <a href=\"https:\/\/wordpress.mediadoma.com\/pt-pt\/como-aproveitar-o-cache-do-navegador-no-wordpress\/\" title=\"Como aproveitar o cache do navegador no WordPress? Etapas a seguir\">Como aproveitar o cache do navegador no WordPress? Etapas a seguir<\/a><\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Fonte de grava\u00e7\u00e3o:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/wpdatatables.com\" class=\"external external_icon\">wpdatatables.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Se voc\u00ea \u00e9 um desenvolvedor de temas WordPress, um programador ou apenas um entusiasta geral ansioso para aprender o que \u00e9 um loop WordPress, este artigo \u00e9 para voc\u00ea!<\/p>\n","protected":false},"author":1,"featured_media":207556,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[806,867],"tags":[1170],"class_list":["post-225889","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-php-8","category-wordpress-8","tag-affiai-pt-pt"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/posts\/225889","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/comments?post=225889"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/posts\/225889\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/media\/207556"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/media?parent=225889"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/categories?post=225889"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/tags?post=225889"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}