Ich habe nach Informationen gesucht, die mein Problem erklären, aber keine gefunden. Ich habe eine Schleife, die angeblich alle Kinderkategorien von "Personal" auflisten sollte. Aus irgendeinem Grund startet die Schleife unendlich neu. Ich habe überprüft und es geht sowohl aus der foreach und while-Schleife, aber schafft es immer noch zu schleifen. Irgendwelche Ideen?Warum verursacht query_posts hier eine Endlosschleife?
Ich rufe die Funktion hier:
// Personnel listing
upp_loop('Personal', 'personnel-preview', '<section class="res-table">', '</section>');
Und dies ist der Code, um die Beiträge zu erzeugen:
// Loop through children (To make headers)
$cats = get_categories('child_of=' . $catID . '&orderby=count&order=DESC');
foreach ($cats as $cat) :
$args = array(
'cat' => $cat->term_id
);
$query = new WP_query($args);
if ($query->have_posts()) :
// Echo the Category name
?> <h2><?php echo $cat->name; ?></h2> <?php
// List all children
while($query->have_posts()) :
$query->the_post();
if (has_post_thumbnail()) {
$img = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'single-post-thumbnail');
}
else {
$img[0] = get_template_directory_uri() . "/img/program-default.png";
}?>
<a href="<?php the_permalink(); ?>" class="res-td">
<img src="<?php echo $img[0] ?>" alt="<?php the_title(); ?>"/>
<h2><?php the_title() ?></h2>
</a>
<?php
endwhile;
endif;
endforeach;
Betrachten Sie bitte die Dokumentation, wie man [Abfrage Beiträge] (http://stackoverflow.com/documentation/wordpress/ 4002/querying-posts # t = 201608150832028118879). Verwenden Sie niemals "query_posts" für diese ... –
@dingo_d Ich habe ein neues WP_query-Objekt erstellt und jetzt bleibt es nicht auf unendlich stecken. Allerdings macht es die foreach 4 mal. Irgendeine Idee warum? –
Nun, wenn Sie 4 Kategorien haben, dann wird es nur 4 Mal "foreach". –