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网站常用的SEO插件和工具介绍

    WordPress是款功能强大的内容管理系统,拥有诸多的插件和主题模板,我们可用它来创建外贸网站,网站成功上线后需要进行日常优化,那么WordPress SEO插件和工具有哪些呢?本文为大家分享几款WordPress网站常用的SEO插件及相关工具。 外贸网站一般用户访问量大,选择合适的主机服务器是网站SEO的重要前提,所以我们可以优先选择带宽资源充足、稳定性…

    2023年1月9日
    206
  • 不用插件启用 WordPress 维护模式

    为什么在线上调整网站时,要使用维护页面,让我们看一下维护页面的一些好处。有了维护页面,您可以… 可以避免访问者在打开您网站时,因维护原因出现一些糟糕的情况。 它可以帮助您正常地在网站的后端调整网站设置,主题或插件,而不会让访问者看到您的网站在维护时的全部细节。 在 WordPress 插件市场,有许多类似功能的插件,功能也非常强大。不过相对的,设置起来就比较…

    2021年11月7日
    620
  • 用简单代码实现WordPress自动给图片添加alt和title属性

    有网友在讨论,如何给网站中的图片自动添加图片的ALT和TITLE属性,因为在采集或者是编辑文章的时候确实图片太多的时候不会给图片添加这两个属性。如果我们采用的Wordpress肯定是有办法实现的,比如这里小编找到2个方法,可以实现自动在添加图片的时候加上属性。 1、方法A:添加ALT和TITLE //文章图片自动添加alt和title属性(https://w…

    2021年8月25日
    696
  • zblog提示“授权文件非法“的终极解决办法

    最近一段时间有很多的用户遇到了这个“授权文件非法”的提示,这是由于zblog的应用中心插件调整了规则导致的。 之前本站写过一篇“zblog报错“授权文件非法”的错误原因和解决办法”的文章,但是还是有用户反应按照教程操作了之后还是提示“授权文件非法”。 这个时候请用本文所介绍的终极解决办法,一次解决“授权文件非法“问题: 1、打开你网站后台–插件管…

    2021年11月18日
    673
  • 宝塔面板mysql进程守护shell脚本(数据库关闭后自动重启)

    我们使用宝塔面板搭建网站时,Mysql数据库有时会意外停止,这时候我们只能登录服务器进行手动重启Mysql。那么怎么设置监控Mysql的运行情况,当数据库进程停止时,自动重启Mysql数据库呢?其实我们可以通过添加计划任务(Shell脚本)的方式来实现。具体操作方法如下: 登陆宝塔面板后台 – 计划任务。任务类型:Shell脚本 任务名称:Mysql进程守护…

    2024年6月21日
    363