wake-up-neo.com

Wie erstelle ich einen Wordpress-Postfilter, mit dem Benutzer Posts nach Jahr filtern können?

Ich möchte ein Dropdown-Menü oben auf der Archivseite oder auf anderen Seiten mit Post-Loop haben, mit dem die Benutzer die Beiträge nach Datum (Jahr) filtern können.

Es wird eine Dropdown-Liste mit allen veröffentlichten Beiträgen des Jahres geben. Beispiel: 2017, 2018, 2019

Meine Schleife:

<?php
    $args = array(
        'cat' => $FeaturedNewsCat,
        'posts_per_page' => 2,
        'order' => DSC
    );
    $the_query = new WP_Query($args);
    while ( $the_query->have_posts() ) : $the_query->the_post();
?>

        <!--Post Template Comes Here-->

<?php
    endwhile;
    wp_reset_postdata();
?>

Bitte sagen Sie mir, was ich tun muss, um die Filterfunktion zu implementieren. Jede Hilfe wird geschätzt.

1
Web People

Ich bin mir ziemlich sicher, dass Sie nicht einmal versucht haben, nach einer Lösung zu suchen ... Wenn ja, dann wären Sie ziemlich sicher zu dieser Codex-Seite gekommen, wo Sie diesen Code finden können:

<select name="archive-dropdown" onchange="document.location.href=this.options[this.selectedIndex].value;">
  <option value=""><?php echo esc_attr( __( 'Select Month' ) ); ?></option> 
  <?php wp_get_archives( array( 'type' => 'monthly', 'format' => 'option', 'show_post_count' => 1 ) ); ?>
</select>

Hier wird in ausgewählten Tags ein Dropdown-Feld mit monatlichen Archiven mit der Anzahl der Posts angezeigt.

Sie müssen lediglich 'monthly' in 'yearly' ändern und beginnen, die Archivvorlage und den globalen wp_query zu verwenden, und nicht Ihren eigenen benutzerdefinierten Code.

1