如何使用get_avatar并强制使用HTTPS?

时间:2014-04-26 18:46:40

标签: wordpress wordpress-plugin

我的博客遍布https。我正在使用gravatar来显示用户的个人资料图片,如下所示:

<? echo get_avatar( get_the_author_meta('user_email'), $size = '56'); ?>

问题是这是http,我该如何制作这个https?

由于

2 个答案:

答案 0 :(得分:3)

get_avatar function位于wp-includes/pluggable.php。内置了一个if语句来检查站点是否通过ssl提供,如果是,则使用下面代码中的链接。所以它应该已经检查你是否强制使用ssl连接并使用正确的链接。

2075            if ( is_ssl() ) {
2076                    $host = 'https://secure.gravatar.com';

虽然有时候会有一些错误导致gravatar没有显示出我来过的地方。您是否收到任何错误,或者您的ssl连接是否显示部分安全?

答案 1 :(得分:1)

接受的解决方案存在的问题是,如果您要缓存此数据,最终可能会缓存http(如果您通过http和https提供博客),之后会在https上提供,导致警告,所以我和#39; d宁愿强迫https。

以下是如何正确行事:

get_avatar( $id, $size, null, false, array('scheme' => 'https') );