WordPress作者归档页面无法获取作者元数据的技术咨询
解决WordPress作者归档页面获取元数据的问题
你的问题出在**get_the_author_meta()的调用时机和参数缺失**:原代码把这个函数放在循环外面,而且没指定作者ID,导致没法拿到每个作者对应的职位信息。要正确获取每位作者的元数据,必须在循环内部针对当前作者的ID调用相关函数。
修正后的完整代码
<?php $authors = get_authors(); foreach ($authors as $author) { // 获取当前作者的ID $author_id = $author->ID; // 获取职位元数据,第二个参数必须传作者ID $jobTitle = get_the_author_meta('job_title', $author_id); // 获取作者头像,参数为作者ID和头像尺寸 $author_avatar = get_avatar($author_id, 120); ?> <div> <?= $author_avatar ?> <h1><?= $author->display_name; ?></h1> <h2><?= $jobTitle ?: '暂无职位信息'; ?></h2> </div> <?php } ?>
关键说明
get_the_author_meta($meta_key, $user_id):第二个参数$user_id是必填项(如果不在文章循环内),不传的话会默认取当前登录用户或当前文章作者的元数据,无法匹配循环里的每位作者。get_avatar($id_or_email, $size):直接传入作者ID就能生成对应的头像,默认用Gravatar,也支持WordPress内置的头像系统。- 可以用
?:运算符处理职位为空的情况,避免显示空白。
内容的提问来源于stack exchange,提问作者xDE4DSH0Tx
相关产品推荐
相关产品推荐

