我希望作者的图片出现在 single.php 页面的某些部分,并且我使用了在 WordPress Stack Exchange 上找到的代码来获取作者 Gravatar 的 URL,以便将该图片用作分区:
这段代码在functions.php中:
if ( function_exists('register_sidebar') )
register_sidebar();
add_theme_support( 'post-thumbnails' );
add_image_size( 'related', 300 , 200 , array(bottom, right) );
function get_avatar_url($get_avatar){
preg_match("/src='(.*?)'/i", $get_avatar, $matches);
return $matches[1]; };
这在 single.php 中:
<div style="background:url('<?php echo get_avatar_url(get_avatar( $curauth->ID, 150 )); ?>');"> </div>
奇怪的是,它返回默认的“神秘人”头像而不是作者的 Gravatar,尽管 Gravatar 链接到作者帐户并且出现在管理面板上!
我怎么解决这个问题 ?
此功能只会为您提供 GRAVATAR URL!
谢谢Musik8101,我根据你的代码想出了我的自定义解决方案。
这是它并且运行良好:
function my_gravatar_url() { // Get user email
$user_email = get_the_author_meta( 'user_email' );
// Convert email into md5 hash and set image size to 80 px
$user_gravatar_url = 'http://www.gravatar.com/avatar/' . md5($user_email) . '?s=80';
echo $user_gravatar_url; }
在模板中只需使用:
<?php my_gravatar_url() ?>
注意:必须在循环内使用。
适用于 WordPress 4.2,适用于那些对 get_avatar_url 方法有问题的人。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)