1. Não use include ou require em arquivos, use get_template_part()
.
2. Não se deve usar 2 query_post na mesma página, use get_posts()
. Para evitar erros de paginação etc toda ve que for obter posts use o get_posts().
http://www.guiawp.com.br/codex/get_posts/
Seja Bem-vindo ao fórum – Leia as Regras e aproveite
Diana, eu tentei seguir sua dica, mas ou não deu certo eu não sei como usar ela, eu acho que a segunda, kkk, mas se tiver uma outra dica manda ai pq to precisando muiiiitoooo.
Em vez de
<?php include (TEMPLATEPATH . '/header_page.php'); ?>
Use:
<?php get_template_part('header_page','header') ?>
Para mostrar o banner, use get_posts(), não use duas query_posts:
<div id="banner_central"><!-- inicio da banner central-->
<ul>
<?php
global $post;
$args = array( 'showposts' => 1, 'offset'=> 1, 'category_name' => 'banner1', 'offset' => '0');
$posts = get_posts( $args );
foreach( $posts as $post ) : setup_postdata($post); ?>
<li><?php the_content(); ?></li>
<?php endforeach; ?>
</ul>
</div><!-- fim da banner central-->
Nada copie o código sugerido mas nada, o conteudo da categoria banner ainda continua aparecendo no lugar do conteudo da page: Olha como ficou o código:
<!-- aqui dá o include para o header--->
<?php get_template_part('header_page','header') ?>
<div id="banner_central"><!-- inicio da banner central-->
<ul>
<?php
global $post;
$args = array( 'showposts' => 1, 'offset'=> 1, 'category_name' => 'banner1', 'offset' => '0');
$posts = get_posts( $args );
foreach( $posts as $post ) : setup_postdata($post); ?>
<li><?php the_content(); ?></li>
<?php endforeach; ?>
</ul>
</div><!-- fim da banner central-->
<div id="page_content">
<div id="page_conteudo">
<?php if (have_posts()): while (have_posts()) : the_post();?>
<h1 class="titulo"><?php the_title();?></h1>
<?php the_content();?>
<?php endwhile; else:?>
<?php endif;?>
</div><!-- fim da the contente-->
</div><!--fim da page conteudo--->
</div>
</div><!-- fim da content_page--->
<?php get_footer();?>
Preciso resolver isso só tá faltando isso pra resolver meus problemas…
Oi Diana, obrigado em tentar me ajudar, olha só o arquivo é a page.php, o include header_page.php é que pensei em uma saída, tipo importar outro header para page, mas também não deu certo.
————————————————————//————
Olha só o que preciso, eu tenho uma categoria chamada Banner1 que fica abaixo do menu e preciso que este banner apareça em todas as páginas do site. Só que na page.php quando coloco o código para puxar o banner da categoria, ele tira o conteúdo da page, ou ela aparece em branco (só o banner aparece).
E já tentei de tudo o que vc pensar… por favor continue me ajudando pois preciso achar a solução rápido.
Diana descobri uma coisa, eu percebi que se eu pegar o código e colocar abaixo de tudo ele funciona perfeitamente, o problema é que o banner tem que ficar em cima e não em baixo.
Acho que o tema está com problemas do tipo não ter as funções que definem as partes do conteúdo, não use o include/require porque causa este tipo de coisa também.
Ex.:
Após </header> (no header.php )tem que existir:
<?php wp_head(); ?>
No footer.php antes de </body>:
<?php wp_footer(); ?>
Veja o que o plugin Theme Check encontra de erros no tema.
O arquivo header_page.php
contém os códigos dos banners?
não o código está na page.php
Olha como está;
<!-- aqui dá o include para o header--->
<?php get_template_part('header_page','header') ?>
<div id="banner_central">
<ul>
<li><!--primeiro da banner 2--->
<?php query_posts('showposts=1&category_name=banner1&offset=0');?>
<?php if (have_posts()): while (have_posts()) : the_post();?>
<?php the_content();?>
<?php endwhile; else:?>
<?php endif;?>
</li>
</ul>
</div><!-- fim da banner central-->
<div id="page_content">
<div id="page_conteudo">
<?php if (have_posts()): while (have_posts()) : the_post();?>
<h1 class="titulo"><?php the_title();?></h1>
<?php the_content();?>
<?php endwhile; else:?>
<?php endif;?>
</div><!-- fim da the contente-->
<div id="sidebar_page">
<?php get_sidebar();?>
</div><!-- fim da sidebar_page --->
</div><!--fim da page conteudo--->
</div>
</div><!-- fim da content_page--->
<?php get_footer();?>
por favor ajuda ai
chequei os códigos
Após </header>
(no header.php )tem que existir:
<?php wp_head(); ?>
No footer.php antes de </body>
:
<?php wp_footer(); ?>
tá tudo certo nesta parte.
Não sei se é isso, mas tinhas duas DIVs sem fechamento, veja agora:
<?php get_template_part('header_page','header') ?>
<div id="banner_central"><!-- inicio da banner central-->
<?php
global $post;
$args = array( 'showposts' => 1, 'offset'=> 1, 'category_name' => 'banner1', 'offset' => '0');
$posts = get_posts( $args );
foreach( $posts as $post ) : setup_postdata($post); ?>
<?php the_content(); ?>
<?php endforeach; ?>
</div><!-- fim da banner central-->
<div id="page_content">
<div id="page_conteudo">
<?php if (have_posts()): while (have_posts()) : the_post();?>
<h1 class="titulo"><?php the_title();?></h1>
<?php the_content();?>
<?php endwhile; else:?>
<?php endif;?>
</div><!-- page_content-->
</div><!--page_conteudo--->
<?php get_footer();?>