web-dev-qa-db-fra.com

Parcourez tous les articles sur le produit?

Je souhaite parcourir tous mes messages appelés "produits". Pour cela j'utilise celui-ci:

$products_IDs = new WP_Query( array(
        'post_type' => 'product'
    ));

while ($products_IDs->have_posts() ) : $products_IDs->the_post();
        $y = $y + 1; 
        $myfile = fopen("wp_all_import.txt", "a");
        fwrite($myfile, "Counter: " . $y . "\t");
        fclose($myfile);

        //some code...

        $sql = "INSERT INTO `wp_all_import` (pid, price, price_old, link, shop) VALUES ('$pid', '$price', '$price_old', '$link', '$shop')";
        if($database->query($sql) === TRUE){
            $myfile = fopen("wp_all_import.txt", "a");
            fwrite($myfile, "Inserted: " . $pid . " \n");
            fclose($myfile);
        }

Mais je n'ai toujours que 10 boucles, mais j'ai plus de 10 pages de produits ... Plus de 100 ... Mais la boucle s'arrête toujours à 10 ... look https://gamekeys-shop.de/wp- admin/wp_all_import.txt

Je ne sais pas pourquoi ... Mais comment puis-je résoudre ce problème ou comment puis-je savoir pourquoi la boucle s'arrête toujours à 10?

Salutations et merci!

1
Jan

Consultez le codex WordPress pour WP_Query pour plus d'informations.

Vous verrez qu'il existe différents paramètres pour WP_Query; il vous suffit d'ajouter le paramètre posts_per_page avec la valeur définie sur -1 pour afficher tous les articles.

$products_IDs = new WP_Query( array(
        'post_type' => 'product',
        'posts_per_page' => -1,
    ));

while ($products_IDs->have_posts() ) : $products_IDs->the_post();
    // Your code
endwhile;