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 纯代码实现页面锚文本链接(免插件)

    WordPress 纯代码实现页面锚文本链接 WordPress 实现页面锚文本链接的方法很多,由于装插件比较繁琐,所以这里老文笔记介绍一个WordPress 纯代码实现页面锚文本链接方法,在网站主题目录找到该文件 functions.php,具体路径:网站根目录:wp-content/themes/主题目录/ functions.php //自动TAG转内…

    2021年10月8日
    427
  • wordpress批量删除所有用户的数据库命令

    一、wordpress如何删除所有用户,只保留管理员 据说可以用插件。但我还是感觉sql命令更直接。 提醒:数据库任何操作之前,都要确保好已经做了备份! 1:删除没有文章的用户 DELETE FROM wp_users WHERE ID NOT IN (SELECT post_author FROM wp_posts); 2:删除不存在用户的元数据 DELE…

    2021年8月12日
    667
  • WordPress发布文章时自动添加标签插件wp-autotags

    很多用户吐槽说WordPress不能自动添加标签,自己添加有些麻烦,今天为大家分享发布文章时自动添加标签WordPress插件wp-autotags,但是自动添加的标签没有自己的设置的标签更精准。 wp-autotags插件采用了TF-IDF算法来生成标签。 TF-IDF算法 使用这款插件,有必要让大家了解一下这个算法。 TF:Term Frequency,…

    2021年10月8日 建站知识
    477
  • 怎样挖掘长尾词?目标关键词和长尾关键词的区别?

    怎样挖掘长尾词?目标关键词和长尾关键词的区别? 目标关键词 你的目标客户最可能使用和搜索的关键词,我们往往用首页来优化它们。 目标关键词一般作为网站首页的标题,以是2-4个字构成的一个词或词组,名词居多,网站的主要内容需围绕网站产品和服务来设定,网站的主要内容围绕目标关键词展开。 一般通过百度指数和竞争对手分析,确定目标关键词。 长尾关键词 长尾关键词是指网…

    2022年5月13日
    392
  • WordPress子比主题保存设置时出现function()错误的解决办法

    相信很多人在使用wordpress建站的时候会使用界面好看并且功能丰富的网站,子比可能会考虑下,但是大家在使用的过程中多多少少会出现一些问题,当然这也并不是主题的原因,只是我们并没有了解一些小知识导致的困扰。今天就来跟大家聊聊在子比主题保存设置时出现“function(){return o&&u(n,o),(s.migrateIsPatchE…

    2024年7月31日
    211