Afișarea tuturor articolelor din categorii specifice pe o pagină
2 ian. 2013, 13:43:28
Vizualizări: 28K
Voturi: 5
Vreau să afișez toate articolele din anumite categorii specifice pe o singură pagină. Pentru aceasta am editat fișierul page.php din folderul temei mele. Am adăugat o clauză 'if' pentru a verifica ce pagină este afișată în prezent și pentru a încărca toate articolele din următoarele categorii.
<?php get_header(); ?>
<div id="primary">
<div id="content" role="main">
<?php
if (is_page(26)) {
query_posts('cat=2,6,9,13&showposts=-1&orderby=date');
if (have_posts()) :
while (have_posts()) :
the_post();
get_template_part( 'content', 'page' );
endwhile;
endif;
} else {
while ( have_posts() ) :
the_post();
get_template_part( 'content', 'page' );
endwhile; // sfârșitul buclei
}
?>
</div><!-- #content -->
</div><!-- #primary -->
<?php get_footer(); ?>
Dar când încarc pagina mea cu ID-ul 26, nu se afișează nimic.

mybecks
351
Comentarii
Toate răspunsurile la întrebare
2
0
Vă recomand să adăugați argumentul categoriei într-un array. Și nu folosiți query_posts
.
De asemenea, showposts
este depreciat, folosiți posts_per_page
în loc.
$args = array (
'cat' => array(2,6,9,13),
'posts_per_page' => -1, //showposts este depreciat
'orderby' => 'date' //Puteți specifica mai mulți filtre pentru a obține datele
);
$cat_posts = new WP_query($args);
if ($cat_posts->have_posts()) : while ($cat_posts->have_posts()) : $cat_posts->the_post();
get_template_part( 'content', 'page' );
endwhile; endif;

janw
1.02K
2 ian. 2013 13:52:16
0
Aceasta se întâmplă pentru că încă folosești query_posts()
. Nu mai face asta. Folosește WP_Query
în schimb:
$extra_posts = new WP_Query( 'cat=2,6,9,13&showposts=-1&orderby=date' );
if ( $extra_posts->have_posts() )
{
while( $extra_posts->have_posts() )
{
$extra_posts->the_post();
get_template_part( 'content', 'page' );
}
wp_reset_postdata();
}

fuxia
107K
2 ian. 2013 13:49:26
Întrebări similare
4
răspunsuri
2
răspunsuri
3
răspunsuri