web-dev-qa-db-fra.com

Modification de la page par défaut pour afficher tous les articles plutôt que les plus récents

J'essaie d'éditer la page de publication par défaut de WordPress afin qu'elle affiche toutes les publications par opposition aux 10 plus récentes, mais je ne sais pas quel fichier éditer.

J'ai essayé de modifier la fonction wp_get_recent_posts dans wp-includes/post.php, mais cela n'a eu aucun effet. Quelqu'un peut me diriger dans la bonne direction?

function wp_get_recent_posts( $args = array(), $output = ARRAY_A ) {

if ( is_numeric( $args ) ) {
    _deprecated_argument( __FUNCTION__, '3.1', __( 'Passing an integer number of posts is deprecated. Pass an array of arguments instead.' ) );
    $args = array( 'numberposts' => absint( $args ) );
}

// Set default arguments.
$defaults = array(
    'numberposts' => 1000, 'offset' => 0,
    'category' => 0, 'orderby' => 'post_date',
    'order' => 'DESC', 'include' => '',
    'exclude' => '', 'meta_key' => '',
    'meta_value' =>'', 'post_type' => 'post', 'post_status' => 'draft, publish, future, pending, private',
    'suppress_filters' => true
);
1
Ceds

vous devez définir "post_per_page" sur "-1". Ajoutez ce code à votre maison ou à index.php.

WP_Query (recommandé)

$args = array('posts_per_page' => -1);
$the_query = new WP_Query( $args );

if ( $the_query->have_posts() ) {
  while ( $the_query->have_posts() ) : $the_query->the_post();
    the_title();
    the_content();
  endwhile;

  /* Restore original Post Data */
  wp_reset_postdata();

} else {
  // no posts found
}

manière query_posts ()

// Args that you pass to loop
$args = array('posts_per_page' => -1);

// The Query
query_posts( $args );

// The Loop
while ( have_posts() ) : the_post();
    the_title();
    the_content();
endwhile;

// Reset Query
wp_reset_query();

Sinon, vous pouvez accéder à Tableau de bord -> Paramètres -> Lecture et définir le nombre maximal de messages par page sur "1 000" ou quelque chose du genre.

0
Krystian Kupiec