web-dev-qa-db-fra.com

Obtention d'un slug de page d'auteur à partir des fonctions get_users () ou get_userdata ()

wp_list_authors() donne une liste des pages permaliens d’auteurs (site.com/author/john, site.com/author/jenny, etc.). Je veux les mêmes liens en utilisant get_users() ou get_userdata() à la place. J'ai besoin de ces fonctions car je présente les auteurs de manière très personnalisée. Cependant, je ne sais pas comment obtenir de bonnes pages d'auteurs avec ces fonctions.

(Par exemple, un auteur a une adresse électronique comme nom d'utilisateur et le lien généré par wp_list_authors() pour sa page d'auteur contient des tirets à la place du "@" et du ".". C'est-à-dire que le slug de la page de l'auteur n'est pas nécessairement la même chose que le nom d'utilisateur)

2
drake035

Vous pouvez récupérer l'URL de la page auteur de n'importe quel utilisateur à l'aide de son ID utilisateur à l'aide de la fonction native de WordPress get_author_posts_url() . En combinant ceci avec get_users() pour récupérer un tableau d’utilisateurs, vous pouvez créer une liste d’auteurs à votre guise!

Vous trouverez ci-dessous un exemple d'utilisation de get_author_posts_url(), affichant un lien vers la page de l'auteur pour l'utilisateur actuellement connecté:

$userid = get_current_user_id();
echo '<a href="' . get_author_posts_url( $userid ) . '">' . __( 'User profile', 'my_textdomain' ) . '</a>';
1
engelen