Oi @wandersonalwes,
Isso é relativamente simples, basta que você crie uma variável que aumente seu valor a cada iteração do loop. Alguma coisa como:
if (have_posts()) {
$i = 1;
while (have_posts()) { the_post();
// Faz o que tem que fazer, normalmente
// Testa se a variável já está com o valor que você quer
if ($i == 3) {
// Exibe adsense ou coisa parecida
}
// Se quiser exibir em todos os posts pares, por exemplo, pode usar:
if ($i % 2 == 0) {
}
// Não esqueça de aumentar o valor da variável a cada iteração
$i++;
}
}
Se você não tiver mais nenhuma dúvida e o código te ajudar como você precisa não esquece de voltar e colocar o tópico como resolvido, beleza? 🙂
Não entendi exatamente como eu posso está acrescentando essa variável, segue abaixo o meu loop
<?php get_header(); ?>
<div class="container">
<div class="row">
<div class="col-md-8">
<div class="titulo">
<?php
echo "";
single_cat_title('<h2>','</h2>');
?>
</div>
<?php query_posts ($query_string . "&order=ASC"); ?>
<?php if ( have_posts() ) : ?>
<?php /* Start the Loop */ ?>
<?php while ( have_posts() ) : the_post(); ?>
<?php
/*
* Include the Post-Format-specific template for the content.
* If you want to override this in a child theme, then include a file
* called content-___.php (where ___ is the Post Format name) and that will be used instead.
*/
get_template_part( 'template-parts/content', get_post_format());
?>
<?php endwhile; ?>
<?php else : ?>
<?php get_template_part( 'template-parts/content', 'none' ); ?>
<?php endif; ?>
</div>
<div class="col-md-4"><?php get_sidebar(); ?></div>
</div>
<div class="row">
<div class="col-md-12"><?php wp_pagenavi(); ?></div>
</div>
</div>
<?php get_footer(); ?>
Oi @wandersonalwes,
Troque
<?php if ( have_posts() ) : ?>
por
<?php if ( have_posts() ) : $i = 0; ?>
e
get_template_part( 'template-parts/content', get_post_format());
por
get_template_part( 'template-parts/content', get_post_format());
if ($i == 3) {
// coloque o código que você quer aqui
}
$i++;
Por favor desmarque o tópico como “não é uma questão de suporte” e, se não houver mais nenhuma dúvida, não esqueça de marcá-lo como resolvido.
-
Esta resposta foi modificada 7 anos, 7 meses atrás por Felipe Elia.
Muito obrigado pela resposta rápida, em partes o código funcionou porém quando coloco algo onde deveria ser o “ads adsense” simplesmente da erro
get_template_part( 'template-parts/content', get_post_format());
if ($i == 3) {
// coloque o código que você quer aqui
<?php global $data; echo $data['publink']; ?>
}
$i++;
Lembrando que quando está sem colocar nada o site abre tranquilamente.
IMAGEM DO ERRO: LINK
Desculpa se estou sendo chato.
Oi @wandersonalwes,
Não está sendo chato não, o importante é querer aprender mesmo :). O código que você colocou não precisa estar dentro de <?php ?> porque o if já está. Tente
if ($i == 3) {
global $data;
echo $data['publink'];
}
e diz aqui se funcionou.
Eba, funcionou perfeitamente, muito obrigado =)
Ajudou bastante!