it-swarm.com.de

Beiträge von # 6 bis # 20 auf der Archivseite anzeigen

Mein Kunde zeigt seine 5 letzten Beiträge (Auszüge) auf der Homepage, gefolgt von einem "read more" -Link. Auf der Archivseite möchte er nicht die 5 letzten Beiträge erneut anzeigen, sondern die Beiträge von # 6 bis # 20.

Wie kann ich das machen?

1
JDRay

Fügen Sie einen Versatz in die Abfrage ein und geben Sie den Wert 5 ein. Die ersten 5 werden übersprungen.

Unten ist ein Code-Snippet für dasselbe

$custom_args = array('post_type' => 'your custom post type name',
'posts_per_page' => '20',
'orderby' => 'id',
'offset'=>5,
'order' => 'ASC',);
$custom_query = get_posts($custom_args);
 foreach ($custom_query as $value) {
 //your data
  }
2
Adarsh

Sie können die ursprüngliche Archivabfrage filtern:

function my_archive_query( $query ) {
  if ( $query->is_archive() && $query->is_main_query() ) {
    $query->set( 'offset', 5 );
    $query->set( 'posts_per_page', 20 );
  }
}

add_action( 'pre_get_posts', 'my_archive_query' );

Mehr Info:

pre_get_posts filter

Bedingtes Tag is_archive

1
Michael