Beiträge nach Kategorie sortieren?

Stundenlang gegoogelt, kann keine Lösung finden.

Zu meinem Thema hast du eine Browse Seite, die alle Videos vom Custom Post Type, mit dem ich arbeite, zieht. Wenn ein Nutzer 30 Kategorien erstellt, können Nutzer mithilfe der oben angezeigten Kategorietasten eine ID wie die Nutzer sortieren. Wenn sie auf Horror ID klicken, werden alle Horror Videos angezeigt.

Wie kann ich meine Videos mit Kategorien innerhalb dieser Schleife sortieren?

SEITE DURCHSUCHEN

Meine Kategorie ul li a

   $numPosts, 'paged' => $page, 'post_type' => 'theme_video' )); // our loop if (have_posts()) { while (have_posts()){ the_post(); get_template_part( 'partials/content', 'browse' ); } } wp_reset_query(); ?> 

Ich bin ein bisschen verloren, wie es weitergeht. Nichts, was ich versuchte, scheint die Schleife zu sortieren, und die verwendeten Methoden sind um 1-2 Jahre veraltet …

Die Seite funktioniert gut für mein erstes Thema, aber ich weiß nicht, wie diese Schleife nach der ausgewählten Kategorie sortiert werden soll. Irgendwelche Tipps oder Hinweise?

Vielen Dank!

Solutions Collecting From Web of "Beiträge nach Kategorie sortieren?"

Sie haben den Parameter orderby in Ihrer Abfrage, aber Sie verpassen die Begleitungsreihenfolge. Dies gibt der Sortierung eine aufsteigende / absteigende Regel.

WordPress Codex Referenz

Ich habe Probleme, die Frage zu verstehen, aber ich query_posts dass das Code-Snippet, das Sie mit query_posts gepostet haben, in einer Kategorie-, Archiv- oder query_posts ist, die aufgerufen wird, wenn Sie einem der von get_category_link () erzeugten Links folgen. Wenn dies der query_posts ist, überschreibt die function query_posts die Standardschleife, aber die Kategorie, nach der gefiltert werden soll, wird nicht eingeschlossen, sodass alle Posts in diesem query_posts .

 // Our variables $numPosts = (isset($_GET['numPosts'])) ? $_GET['numPosts'] : 0; $page = (isset($_GET['pageNumber'])) ? $_GET['pageNumber'] : 0; // build query $args = array( 'posts_per_page' => $numPosts, 'paged' => $page, 'post_type' => 'theme_video' ); // get category ID $cat_id = get_query_var( 'cat' ); // add category to query if an id is found if ( $cat_id != '' ) { $cat = get_category ( $cat_id ); $args['category'] = $cat->slug; } // go! query_posts( $args ); 

Auf einer anderen nicht, ich würde vorschlagen, mit der pre_get_posts Hook im Gegensatz zu der query_posts function zu query_posts .

EDIT: Antwort wurde gefunden und ich posten es für jeden anderen, der dieses Problem hat. Wenn Sie bessere Möglichkeiten haben, dies zu tun, dann posten Sie bitte unten für andere.

Platziere diesen Code in deiner category.php. Es wird automatisch die Kategorie von der URL übernehmen und an die Kategorie cat => $category_id und die Schleife entsprechend aktualisieren.

 
    < ? $args = array( 'orderby' => 'name', 'parent' => 0 ); $categories = get_categories( $args ); foreach ( $categories as $category ) { echo '
  • ' . $category->name . '
  • '; } ?>
< ? // Our variables $page = (isset($_GET['pageNumber'])) ? $_GET['pageNumber'] : 0; // grab slug from url $category_id = get_query_var('cat'); // define args $args = array( 'posts_per_page' => '36', 'paged' => $page, 'post_type' => 'theme_video', 'cat' => $category_id ); // place args in query $category_posts = new WP_Query($args); // our loop if($category_posts->have_posts()) { while($category_posts->have_posts()) { $category_posts->the_post(); get_template_part( 'partials/content', 'browse' ); } } wp_reset_query(); ?>