web-dev-qa-db-fra.com

WP_User_Query extrayant ACF en boucle

J'utilise le code suivant pour afficher mes utilisateurs sur le modèle

<?php
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$paged -= 1;
$limit = 100;
$offset = $paged * $limit;

$args  = array(
    'number' => $limit,
    'offset' => $offset,
    'role'         => 'editor',
);

global $wp_query;
$wp_query = new WP_User_Query($args);

// Get the results
$authors = $wp_query->get_results();


 foreach($authors as $author) : 

     echo $author->description; 

  endforeach;

?>

Ce qui fonctionne parfaitement, mais j'aimerais également afficher les champs personnalisés que j'ai créés à l'aide du plugin Advanced Custom Fields. J'ai réussi à le faire sur la page author.php avec ce code:

$author_id2 = get_the_author_meta( 'ID' );
$author_badge = get_field('profile_picture', 'user_'. $author_id2 ); // image field, return type = "Image Object"

<img src="<?php echo $author_badge; ?>" alt="<?php echo $author_badge['alt']; ?>" class="alignright" /> 

Mais je ne suis pas sûr de savoir comment afficher le même champ dans mon WP_User_Query. Tous les conseils seront très appréciés

1
jmysona

Comme je le sais ou au moment de ma dernière vérification, ACF ne met pas de métadonnées dans le "meilleur" emplacement, comme dans get_term_meta, ni de métadonnées pour les utilisateurs.

Au lieu de cela, Elliot a fait une chose très étrange, mais en se concentrant sur ce que vous demandez:

get_field('your-field','user_' . $author->ID);

Donc, la boucle, vous devrez ajouter quelque chose comme ci-dessus, en savoir plus dans son tutoriel: http://www.advancedcustomfields.com/resources/how-to/how-to-get- values-from-a-user/

1
jepser