如何在WordPress贡献者页面中显示具有头像的作者列表
在客户的网站上工作时,我们意识到列出作者的内置功能还不够。我们向您展示了如何显示您网站上的所有作者,但只有您希望在侧边栏中显示简单列表时,该方法才有用。如果你想创建一个内容丰富且有用的贡献者页面,那么这个函数就没用了。
在本文中,我们将向你展示如何创建一个贡献者页面,它将显示一个带有头像的作者列表或userphoto以及您喜欢的任何其他信息。本教程是中级别教程。
您需要做的第一件事是使用此模板创建自定义页面。
然后您将需要在您的主题文件夹中打开 functions.php 文件并添加以下代码:
function contributors() {
global $wpdb;
$authors = $wpdb->get_results("SELECT ID, user_nicename from $wpdb->users ORDER BY display_name");
foreach($authors as $author) {
echo "<li>";
echo "<a href=\"".get_bloginfo("url")."/?author=";
echo $author->ID;
echo "\">";
echo get_avatar($author->ID);
echo "</a>";
echo "<div>";
echo "<a href=\"".get_bloginfo("url")."/?author=";
echo $author->ID;
echo "\">";
the_author_meta("display_name", $author->ID);
echo "</a>";
echo "</div>";
echo "</li>";
}
}
通过添加此功能,您可以告诉WordPress创建一个显示作者姓名和作者头像的功能。您只需更改以下行即可将头像更改为userphoto插件设置:
echo get_avatar($author->ID);
并将其替换为:
echo userphoto($author->ID);
您可以为此功能添加更多功能,例如显示作者URL和其他信息。按照使用的结构配置文件。
您还需要在CSS文件中添加以下行:
#authorlist li {
clear: left;
float: left;
margin: 0 0 5px 0;
}
#authorlist img.photo {
width: 40px;
height: 40px;
float: left;
}
#authorlist div.authname {
margin: 20px 0 0 10px;
float: left;
}
添加完该功能后,现在需要调用它你的页面模板。打开contributors.php文件或您为文件命名的任何内容。按照与page.php相同的页面模板,在循环中,只需添加此功能而不是显示内容:
<div id="authorlist"><ul><?php contributors(); ?></ul></div>
这将为您提供更丰富内容的贡献者页面。这个技巧非常适合多作者博客。
现在这里是我们如何使用它的一个例子:

如果您想要一个贡献者页面,其中包含上述示例中显示的信息,则需要对原始函数进行一些更改。我们有一个示例代码,可以准确显示上图中显示的所有内容。
function contributors() {
global $wpdb;
$authors = $wpdb->get_results("SELECT ID, user_nicename from $wpdb->users WHERE display_name <> "admin" ORDER BY display_name");
foreach ($authors as $author ) {
echo "<li>";
echo "<a href=\"".get_bloginfo("url")."/author/";
the_author_meta("user_nicename", $author->ID);
echo "/\">";
echo get_avatar($author->ID);
echo "</a>";
echo "<div>";
echo "<a href=\"".get_bloginfo("url")."/author/";
the_author_meta("user_nicename", $author->ID);
echo "/\">";
the_author_meta("display_name", $author->ID);
echo "</a>";
echo "<br />";
echo "Website: <a href=\"";
the_author_meta("user_url", $author->ID);
echo "/\" target="_blank">";
the_author_meta("user_url", $author->ID);
echo "</a>";
echo "<br />";
echo "Twitter: <a href=\"http://twitter.com/";
the_author_meta("twitter", $author->ID);
echo "\" target="_blank">";
the_author_meta("twitter", $author->ID);
echo "</a>";
echo "<br />";
echo "<a href=\"".get_bloginfo("url")."/author/";
the_author_meta("user_nicename", $author->ID);
echo "/\">Visit ";
the_author_meta("display_name", $author->ID);
echo ""s Profile Page";
echo "</a>";
echo "</div>";
echo "</li>";
}
}
此代码使用用户照片插件。twitter字段正在使用我们在“配置文件”页面中的文章如何显示作者的Twitter和Facebook中提到的技巧来显示。
CSS例如如下所示:
#authorlist ul{
list-style: none;
width: 600px;
margin: 0;
padding: 0;
}
#authorlist li {
margin: 0 0 5px 0;
list-style: none;
height: 90px;
padding: 15px 0 15px 0;
border-bottom: 1px solid #ececec;
}
#authorlist img.photo {
width: 80px;
height: 80px;
float: left;
margin: 0 15px 0 0;
padding: 3px;
border: 1px solid #ececec;
}
#authorlist div.authname {
margin: 20px 0 0 10px;
}
您可以显示更多如果您愿意,可以使用高级代码作为指南。
评论被关闭。