编辑后页面上的特色图像未通过HTTPS加载

时间:2016-01-22 作者:Alex Zaworski

我们的网站使用TLS,尽我所能,我在任何地方都强制使用TLS。我将FORCE\\u SSL\\u ADMIN定义为true,并尝试了以下过滤器,这些过滤器是我从插件SSL不安全内容修复程序借用的(https://wordpress.org/plugins/ssl-insecure-content-fixer/):

function fix_ssl_attachment_url( $url ) {
  if ( is_ssl() ) {
    if (stripos($url, \'http://\') === 0) {
        $url = \'https\' . substr($url, 4);
    }
  }
  return $url;
}
add_filter( \'wp_get_attachment_url\', \'fix_ssl_attachment_url\', 9999 );
无论出于何种原因Featured Image metabox正在尝试通过HTTP加载缩略图,导致加载失败,无法显示预览。有趣的是,媒体库本身似乎表现正常。网站前端没有问题。这是我正在谈论的领域的截图,因为我很确定我弄错了一些术语:
Broken thumbnail

安装上述插件似乎实际上解决了这个问题,但我不明白为什么,我也不太喜欢安装我真正不需要的插件。该网站使用HTTPS已经有一段时间了,我想这个问题是最近才开始的,这让我相信这是我搞砸的事情,但我一辈子都搞不清楚那可能是什么。

1 个回复
SO网友:Alex Zaworski

结果是uploads目录有问题(不确定最初是什么原因导致的)。我可以使用以下筛选器解决此问题:

function fix_ssl( $url ) {
    if ( is_ssl() ) {
        if (stripos($url, \'http://\') === 0) {
        $url = \'https\' . substr($url, 4);
        }
    }
    return $url;
}

function uploadDir($uploads) {
    $uploads[\'url\'] = fix_ssl($uploads[\'url\']);
    $uploads[\'baseurl\'] = fix_ssl($uploads[\'baseurl\']);
    return $uploads;
}

add_filter(\'upload_dir\', \'uploadDir\');

相关推荐

WP-ADMIN:“对不起,您不能访问此页面。”

两周后不使用我们的WP站点,登录/wp-admin/ 出现白屏错误:抱歉,不允许您访问此页面。我有:重命名plugins 到plugins.temp.通过phpMyAdmin创建了一个新的管理员用户。新用户已user_meta 的作用a:1:{s:13:"administrator";s:1:"1";}.</已重命名themes 到themes.temp.</删除核心WordPress文件,并替换为新上载的文件</已替换.htaccess 使用默认