Wie sortiere ich diese benutzerdefinierte Liste mit Haftnotizen?

Hier ist mein Code, der mir alle klebrigen Beiträge auf meiner Seite bringt.

$sticky = get_option( 'sticky_posts' ); $args = array( 'posts_per_page' => -1, 'post__in' => $sticky, 'ignore_sticky_posts' => 1 ); $query = new WP_Query( $args ); while ($query->have_posts()) { //while loop starts $query->the_post(); ?> <a href="https://wordpress.stackexchange.com/questions/235659/how-do-i-sort-this-custom-list-of-sticky-posts/"> slug; } foreach($cats as $cat){ echo $cat; } echo '
'; } //while loop ends

Im Moment zeigt es nur die ID des Posts mit dem Link zum Post UND den Kategorie-Slug der Kategorie an, zu der der Post gehört. So sieht das Ergebnis aus.

Bildbeschreibung hier eingeben

Jetzt brauche ich diese Liste “alphabetisch sortiert” mit den Werten des “Kategorie-Slugs”. So dass es ungefähr so ​​aussieht.

Bildbeschreibung hier eingeben

Bitte lassen Sie mich in Kommentaren wissen, ob meine Frage unklar ist oder ob ich etwas übersehen habe. Ich brauche keinen ganzen Code (obwohl das großartig wäre), sondern einen Vorschlag oder Ideen, wie das gemacht werden könnte.

Solutions Collecting From Web of "Wie sortiere ich diese benutzerdefinierte Liste mit Haftnotizen?"

Dies sollte den Trick machen:

 $sticky = get_option( 'sticky_posts' ); $args = array( 'posts_per_page' => -1, 'post__in' => $sticky, 'ignore_sticky_posts' => 1 ); $query = new WP_Query( $args ); $ids_by_category = array(); while ($query->have_posts()) { $query->the_post(); $post_categories = wp_get_post_categories(get_the_ID()); foreach($post_categories as $c){ $cat = get_category($c); $ids_by_category[$cat->slug][] = get_the_ID(); } } // sort by key ksort($ids_by_category); foreach ($ids_by_category as $category_slug => $ids) { foreach ($ids as $id) { printf( '%d https://wordpress.stackexchange.com/questions/235659/how-do-i-sort-this-custom-list-of-sticky-posts/%s
', get_permalink($id), $id, $category_slug ); } }