WordPress开启HTTPS后正文图片改为HTTPS两种方法

WordPress 站点开启 HTTPS 后,文章中引用的图片就很有必要把 HTTP 统一改为 HTTPS,要不然会地址栏上的绿锁就会有黄色的三角,感觉是很不爽的。为了解决这个问题,我们有两种方法:一个是治标不治本的办法,就是在主题的  functions.php 文件中加入字符替换语句,这样读者在每次访问的时候会相应的把图片的 http 链接替换为 https,而数据库的原始内容不变;另一个彻底根治的办法是,直接进入数据库用 SQL 语句把 HTTP 直接替换为 HTTPS。下面老文笔记就这两个方法本文做简单介绍:

WordPress开启HTTPS后正文图片改为HTTPS两种方法 - 第1张 - boke112联盟(boke112.com)

方法一:通过主题的 functions.php 文件来批量替换

在主题文件的 functions.php(WP后台“外观”-“编辑”右侧可以找到)里加入如下代码(注意域名需要做相应修改)

/* 替换图片链接为 https */
/* 来源(https://www.wenrr.com/): */
function https_image_replacer($content){
if( is_ssl() ){
/*已经验证使用 $_SERVER['SERVER_NAME']也可以获取到数据,但是貌似$_SERVER['HTTP_HOST']更好一点*/
$host_name = $_SERVER['HTTP_HOST'];
$http_host_name='http://'.$host_name.'/wp-content/uploads';
$https_host_name='https://'.$host_name.'/wp-content/uploads';
$content = str_replace($http_host_name, $https_host_name, $content);
}
return $content;
}
add_filter('the_content', 'https_image_replacer');

PS:老文认为应该不用那么复杂,直接使用以下代码可能会更加简练一些,毕竟大家的域名基本上都是固定的。

function replacehttp($content){
if( is_ssl() ){
$content = str_replace('http://域名/wp-content/uploads', 'https://域名/wp-content/uploads', $content);
}
return $content;
}
add_filter('the_content', 'replacehttp');

方法二:通过 SQL 语句进行正文的批量替换

PS:操作前请务必对数据库进行备份,以避免不可挽回的数据丢失!

WordPress开启HTTPS后正文图片改为HTTPS两种方法 - 第2张 - boke112联盟(boke112.com)

运行如下语句批量替换:

UPDATE wp_posts SET post_content = replace(post_content, 'http://域名/wp-content/uploads','https://域名/wp-content/uploads');

PS:记得将以上语句中的域名及路径个自己的,如果更改过数据库表的前缀,还要记得修改wp_为自己的前缀哦。

关于WordPress开启HTTPS后正文图片改为HTTPS两种方法的相关内容;如有侵权,请联系老文删除。

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
老文的头像老文
上一篇 2021年9月27日 上午11:19
下一篇 2021年10月7日 上午1:26

相关推荐

  • WordPress上传的文件尺寸超过php.ini中定义的upload_max_filesize值解决方法

    WordPress上传主题包时,提示“上传的文件尺寸超过 PHP.ini 中定义的 upload_max_filesize 值”。 问题原因是php.ini文件里限制了最大上传文件大小,默认为2MB,解决方法找到这个文件按照下文方法稍微修改一下即可。 1、一般来说VPS服务器的话,就是找到php.ini这个文件,然后修改里面几个参数即可。php.ini的路径…

    2021年11月7日
    471
  • 腾讯云代理查询方法渠道查询方法 自己是谁的腾讯云代理客户

    腾讯云代理查询方法一:查询站内信 登录官方平台账号-管理中心-站内信(最右上角的新房标志) 在站内信里面有一封 这样子就可以查询到了,联系方式的话里面也会写得很清楚 。续费或者新购买就可以联系了。 腾讯云代理查询方法二:查询链接 http://www.qcloud0755.com/chaxun 通过代理商查询链接就可以查询到代理商了 点击上面的查询链接 然后…

    2022年11月12日
    178
  • zblog提示“权限不足,请联系网站管理员!”的解决办法

    zblog用户在发布文章的时候会提示“权限不足,请联系网站管理员!”,出现这个提示的原因是因为使用了唐朝的“百搭会员中心”插件,而这个插件有一个bug一直没用更新导致的。 下面来说下使用了百搭会员插件后怎么设置普通用户如何发布文章。 首先你要去应用中心下载“zblog角色分配器”这个插件,设置普通用户也有文章发布权限。 然后发现即使开启了普通用户的文章发布权…

    2021年11月18日
    642
  • 宝塔linux面板命令大全(最全宝塔linux面板命令)

    宝塔linux面板命令大全 安装宝塔 CentOS安装脚本 yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh Ubuntu/Deepin安装脚本 wget -O inst…

    2024年10月3日
    533
  • zblog博客无法上传附件/上传图片失败怎么办?

    zblog论坛里面经常有网友在问“zblog无法上传附件怎么办?”或者“zblog无法上传图片怎么办?”。老文笔记尝试为大家归类几种原因。 1、上传的图片或者附件太大了超出了限制。 解决办法:后台–网站设置–全局设置–允许上传文件的大小(单位MB)。将允许上传文件的大小设置大一些。 2、主机权限不足或者有限制。 解决办法:…

    2022年11月10日
    310