Advertisement
  1. Code
  2. WordPress

Dominando WP_Query: Series Finale (Final da Série)

Scroll to top
Read Time: 6 min
This post is part of a series called Mastering WP_Query.
Query Improvements in the Latest Versions of WordPress

Portuguese (Português) translation by João Fagner (you can also view the original English article)

Bem-vindo ao final da série "Dominando WP_Query". Tem sido uma longa jornada — isso foi uma das séries mais longas da história do Tuts+. Rachel e Eu estamos extremamente orgulhosos por sermos os dois escritores desta referência a WP_Query.

Esperamos que tenham gostado do passeio. Nesta parte final, nós vamos recapitular o que aprendemos e fechar as cortinas.

Parte 1: Uma introdução

Esta foi a introdução à série por Rachel. Nesta parte, aprendemos:

  • O que é WP_Query em termos simples, em um exemplo simples
  • Por que devemos usar WP_Query, e porque nós deveríamos usá-lo sobre outros métodos para criar consultas personalizadas
  • As "advertencias" do WP_Query que devemos saber

Parte 2: Usando o Loop com WP_Query

A segunda parte foi sobre a criação de um loop com a classe WP_Query, também escrito por Rachel. Nesta parte, aprendemos:

  • O que é um "loop WordPress" e onde e como deve ser usado
  • como os loops de WordPress são estruturados (com um exemplo bem escrito e bem detalhado)
  • executando loops extra com classe WP_Query

Parte 3: Funções Relacionadas

Nesta parte, escrita pelos nossos confiáveis autores, conhecemos 13 funções que interagem com WP_Query, tornando o trabalho com ela mais fácil. As funções eram:

  • get_query_var(), que obtém as variáveis de consulta pública
  • query_posts(), que altera o loop principal, é uma função ruim, muito ruim por sinal
  • get_post(), que obtém um post simples para ser trabalhado
  • get_posts(), que recebe posts e os retorna em um array
  • get_pages(), que obtém páginas da mesma forma
  • have_posts(), que é uma Tag Condicional que retorna TRUE se existir posts retornados da consulta
  • the_post(), que transforma os cogs no loop
  • setup_postdata(), o que configura a variável global $post
  • rewind_posts(), que limpa o loop atual
  • wp_reset_postdata(), que reseta a variável global $post
  • wp_reset_query(), que reseta toda a consulta
  • is_main_query(), que verifica se a consulta atual é a consulta principal (ainda é outra Tag Condicional)
  • in_the_loop(), que verifica se estamos no loop (ainda é outra Tag Condicional)

Parte 4: Filtros Relacionados & Ações

Nessa parte que eu escrevi, foi irritante e gratificante ao mesmo tempo. Foi chato porque levou mais tempo de pesquisa, mas foi muito gratificante porque, bem, eu aprendi muito. (Dica de aprendizagem pro: escreva um tutorial sobre um assunto que você não sabe ou sabe pouco sobre!)

Cada filtro WP_Query relacionados foi (de alguma forma) sobre os comandos SQL que executa a consulta — a maioria deles filtra as cláusulas diferentes como LIMITWHERE ou DISTINCT. As três ações, por outro lado, têm finalidades diferentes:

  • A ação pre_get_posts interfere com a consulta antes dela ser executada.
  • A ação parse_query lida com a análise da consulta.
  • A ação de the_post modifica o objeto do post.

Parte 5: Propriedades e Métodos

Nesta parte que eu escrevi, repassamos as propriedades e métodos da classe WP_Query. ("Propriedades" e "métodos" são meramente "variáveis" e "funções" dentro de uma classe PHP). Aprendemos sobre o que as propriedades (variáveis) são:

  • $query
  • $query_vars
  • $queried_object
  • $queried_object_id
  • $posts
  • $post_count
  •  $found_posts
  • $max_num_pages
  • $current_post
  • $post
  • 25 propriedades que começam com $is_, que funcionam como Tags Condicionais

E os métodos (funções) foram:

  • init()
  • parse_query()
  • parse_query_vars()
  • get()
  • set()
  • &get_posts()
  • next_post()
  • the_post()
  • have_posts()
  • rewind_posts()
  • &query()
  • get_queried_object()
  • get_queried_object_id()

Parte 6 a 12: Argumentos da Classe WP_Query

Nas próximas sete partes, Rachel fez um trabalho fantástico, explicando todos os argumentos que podemos usar com a classe WP_Query, com pequenos exemplos:

Parte 13: 10 Exemplos Úteis de WP_Query

Nesta parte, tomei a liberdade de passar vários exemplos usando a classe WP_Query e suas funções relacionadas. (E também dei um exemplo rápido para lembrá-lo de como criar um loop com WP_Query.) Os exemplos foram sobre:

  1. listagem de posts do autor no ano atual
  2. criando as "Últimas Postagens Desta Categoria" que exclui o post atual
  3. construindo uma lista dos "Posts Mais Populares", ordenado pela contagem de comentário
  4. criando um slider simples
  5. mostrando uma citação aleatória na barra lateral
  6. produtos de listagem entre uma faixa de preço
  7. construindo um shortcode para mostrar um post dentro de um post
  8. listagem atual programada de posts (com resumos, que você goste)
  9. exibir uma seção com "Post de um Ano Atrás, como postagem atual"
  10. mostrando os filhos da página atual

Tenho que admitir, essa foi a parte mais divertida em que eu trabalhei!

Parte 14: Combinando WP_Query com Consulta Principal

Nesta parte, escrita por Rachel, fala sobre como combinar a classe WP_Query com a consulta principal. É um assunto muito intrigante, mas eu tenho que dar alguns spoilers aqui — nesta parte, Rachel deu três ótimos exemplos:

  1. O primeiro exemplo foi sobre como exibir posts apenas de um tipo de post em um arquivo de categoria.
  2. O segundo exemplo foi sobre pegar os posts (retornados pela consulta principal), pelo tipo de post e lista-los separados pelo seu tipo de post, ainda em uma única lista.
  3. O terceiro exemplo foi sobre separar a consulta principal em duas consultas personalizadas.

Partes 15 a 18: Os Companheiros da Classe WP_Query

Você sabia que existem classes que funcionam como a classe WP_Query para ajudar WP_Query? Nas partes seguintes, Rachel e Eu conversamos sobre:

  • Parte 15: Dominando WP_User_Query 
  • Parte 16: Dominando WP_Comment_Query 
  • Parte 17: Dominando WP_Meta_Query & WP_Date_Query

Parte 18: Consultas Melhoradas no WordPress 4.1

Nesta parte, Rachel falou sobre as melhorias para o sistema de consulta do WordPress na versão 4.1 — como consultas aninhadas, parâmetros de comentário e consertos de bugs em geral. É uma parte delicada, uma luz lida antes do fim.

Parte 19: O Final

Como o Oracle falou no filme Matrix Revolutions: Tudo o que tem um começo tem um fim.

Foi uma longa viagem, e como eu disse no início, é uma das séries mais longas da história do Tuts+. Juntei forças com Rachel McCollin, um dos melhores instrutores do Tuts+, e estamos orgulhosos de termos escrito a mais longa, a mais abrangente e a mais épica série de tutoriais sobre a classe WP_Query e seus companheiros.

Nós trabalhamos muito duro nesta série, e nós realmente esperamos que você tenha apreciado cada pedacinho dela. Se você aprendeu algo novo nesta série parte-19, então estamos felizes por termos feito um bom trabalho.

Se você tiver algum comentário sobre essa série, não hesite em partilhar os seus pensamentos na seção de comentários abaixo. Como sempre, se você gostou da série, não se esqueça de compartilhar esta parte final com os seus amigos como um índice.

Saúde!

Seja o primeiro a saber sobre novas traduções–siga @tutsplus_pt no Twitter!

Advertisement
Did you find this post useful?
Want a weekly email summary?
Subscribe below and we’ll send you a weekly email summary of all new Code tutorials. Never miss out on learning about the next big thing.
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.