Como segmentar apenas a página inicial (não páginas paginadas subseqüentes) no tema / plugin?

Gostaria de ligar a primeira página apenas. Não paginas paginadas subseqüentes (como? Paged = 2). Eu quero produzir determinada saída apenas na página inicial “verdadeira” do site.

Eu tentei:

 

mas isso só funciona se a variável paged estiver presente (ex: domain.com?paged=1 ).

Solutions Collecting From Web of "Como segmentar apenas a página inicial (não páginas paginadas subseqüentes) no tema / plugin?"

Você tem um equívoco sobre is_front_page() . Vamos ver a fonte:

 public function is_front_page() { // most likely case if ( 'posts' == get_option( 'show_on_front') && $this->is_home() ) return true; elseif ( 'page' == get_option( 'show_on_front') && get_option( 'page_on_front' ) && $this->is_page( get_option( 'page_on_front' ) ) ) return true; else return false; } 

Então, a partir do acima, is_front_page() retornará true on

  • A página frontal estática ( quando a leitura da configuração é definida como Front page ) e todas as páginas paginadas da página frontal estática. /page/2/ etc retornará verdadeiro, pois é apenas uma página paginada da primeira página estática

  • A página inicial quando a configuração de leitura está configurada para Your latest posts , bem como para todas as páginas paginadas da página da publicação.

is_front_page() retornará false em:

  • A página de blog quando uma página frontal estática é definida e as páginas de postagem são definidas com a Posts page . No entanto, is_home() retornará verdadeiro aqui

  • Qualquer outra página que não seja a página inicial ou a página inicial estática.

O que você pensa é is_paged() . Esse condicional retornará falso na primeira página de uma consulta paginada e retornará verdadeiro em outra página de uma consulta paginada.

Com isso em mente, você provavelmente precisaria do seguinte

 if ( is_front_page() // Can change to is_home() && !is_paged() // Use the NOT operator to return true on page one, false after that ) { // Do what you need to do }