web-dev-qa-db-fra.com

Comment créer un tableau pour un identifiant de publication CPT à utiliser dans une instruction IF/WHILE

J'utilise ACF et j'essaie de faire ce qui suit sur une page

  1. Créer un tableau de type d'article personnalisé "Services"
  2. Vérifier si le tableau a au moins 1 post ID
  3. Si tel est le cas, pour chaque ID d'article, affichez: <?php the_field('the_field','POST_ID');?>
  4. Sinon, echo "Il n'y a pas de services"
1
Ryan Brooks

Vous pouvez utiliser le paramètre fields de WP_Query pour obtenir uniquement les ID en arrière, puis les parcourir avec une boucle foreach:

$args = array(
    'post_type' => 'services',
    'posts_per_page' => -1,
    'fields' => 'ids',
);
$query = new WP_Query( $args );

if( $query->have_posts() ){
    foreach( $query->posts as $id ){
        the_field( 'the_field', $id );
    }
} else {
    echo 'There are no services';
}
3
Milo