How can i retrieve the author id if i have its name.
I have fornt end form any user can enter the author name to filter the posts by author name so after that how can i get author id. Or there is any other way to write the query so that it return the posts which is posted by specific authors. Thanks
get_user_by
will get you the user data by ‘id’, ‘slug’, ’email’, or ‘login’.‘slug’ is the user_nicename.
However, I am not sure what you mean by ‘name’. There are other plausible ‘name’ fields, not all of them required. There is the
display_name
for example.To search fields like
user_nicename
you will need to create a newWP_User_Query
.The default columns searched appear to be based on the type of data in the search field but you can restrict to particular fields by using the
search_fields
parameter.Strange, because I found it difficult the correct answer to this, in turn anyway, it’s a simple thing:
Firstly you need get the author’s name (So this now you’ve got it this way either, in this example I get the comment author’s name):
$author = get_comment_author( $comment_ID );
And now the ID by its name:
$the_user = get_user_by('login', '' . $author . '');
$the_user_id = $the_user->ID;