✅ Notícias, temas e plug-ins da WEB e do WordPress. Aqui compartilhamos dicas e as melhores soluções para sites.

Classifique as postagens do WordPress por data

12

TL;DR: Se você está procurando uma maneira fácil de classificar as postagens do WordPress por data (seja decrescente ou ascendente) na área de administração sem que os usuários cliquem no cabeçalho da coluna Data, você pode fazê-lo usando o pre_get_postsfiltro que fornece uma referência à instância WP_Queryem execução na página.

Para obter exemplos em código sobre como fazer isso, confira o restante do artigo.

Classificar postagens do WordPress

Este artigo foi escrito de tal forma que assume sua configuração baseada em classe. Isso significa que a configuração do filtro é definida em uma função como inite invoca um publicnome de função na classe, como sort_articles_by_recent_time.

Finalmente, ele define uma prioridade 10e especifica que a função aceitará um único argumento (que é uma instância de WP_Query.

Primeiro, adicione o seguinte filtro:

add_action( 'pre_get_posts', [ $this, 'sort_articles_by_recent_time' ], 10, 1 );

Em seguida, adicione a seguinte função:

Veja como funciona:

  1. Observe as primeiras verificações condicionais se não estivermos na área de administração ou se não estivermos na edit.phppágina (que é a página de listagem de posts), simplesmente deixamos a funcionalidade. Esta é uma cláusula de guarda ou um retorno antecipado.
  2. Se atendermos a esses dois critérios, atualizaremos a consulta para que ela ordene publicações por data em ordem decrescente. Isso significa que as datas mais recentes sempre serão listadas no topo.

Isso não leva em conta o status do post (portanto, se for um draftou um post com o publishstatus, não importa). Além disso, isso evitará que os usuários tenham que clicar no cabeçalho da coluna Data para classificar os resultados conforme necessário, se isso for algo que você deseja em sua solução.

Referências

  • [pre_get_posts](https://developer.wordpress.org/reference/hooks/pre_get_posts/)
  • [WP_Query](https://developer.wordpress.org/reference/classes/wp_query/)

Fonte de gravação: tommcfarlin.com

Este site usa cookies para melhorar sua experiência. Presumiremos que você está ok com isso, mas você pode cancelar, se desejar. Aceitar Consulte Mais informação