WordPress去除网站失效特色图片可以使用下面我给出的功能代码,你可以直接添加到你主题的functions.php文件中,流程如下:
注意:添加代码前,请备份数据,请备份数据,请备份数据。重要的事情说三遍。
实现方式
编辑当前主题的 functions.php 文件
WordPress网站后台 – 仪表盘 – 外观 – 主题文件编辑器(有的版本可能显示是编辑)>选择主题functions.php文件>添加代码>保存文件:
注意和推荐搭配
上面添加到主题functions.php文件的这种方式添加的功能代码只在当前使用主题下有作用,如果你切换了主题,那么这个时候就会失效,所以要注意。
不过这类代码通常是一次性使用,使用完我们要删除。
推荐你使用WPCode 代码片段插件,你可以直接将上述代码添加为一个新的代码片段开启,使用完之后选择关闭这个功能代码就行,这个插件它的代码库中还有许多使用的功能代码片段,你可以选择你用得上的导入就可以,关于这个插件的介绍推荐你看我之前文章:WordPress代码片段插件 WPCode。
功能代码
/*
Function Name: Remove invalid feature images
Description: Remove invalid feature images
Version: 1.0
Author: https://www.linfengnet.com/
*/
function check_and_delete_thumbnail() {
// 获取当前文章的特色图片ID
$thumbnail_id = get_post_thumbnail_id();
// 如果特色图片ID存在
if ( $thumbnail_id ) {
// 获取特色图片的URL
$thumbnail_url = wp_get_attachment_image_src( $thumbnail_id, 'full' );
// 使用curl检查特色图片是否可以正常访问
$ch = curl_init($thumbnail_url[0]);
curl_setopt($ch, CURLOPT_NOBODY, true);
curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
// 如果特色图片无法正常访问
if ($httpCode != 200) {
// 删除特色图片
delete_post_thumbnail( get_the_ID() );
}
}
}
add_action( 'wp', 'check_and_delete_thumbnail' );
代码解释
上面这段代码是用于WordPress的一个功能,它的主要目的是检查并删除无效的特色图片。
代码先会获取文章的特色图片ID,如果存在,则代表设置了文章特色图片,然后获取图片的URL访问判断是否正常,下面是对这段代码的详细解释:
function check_and_delete_thumbnail() {...}
:定义了一个名为check_and_delete_thumbnail
的函数。$thumbnail_id = get_post_thumbnail_id();
:获取当前文章的特色图片ID。if ( $thumbnail_id ) {...}
:如果特色图片ID存在,就执行括号内的代码。$thumbnail_url = wp_get_attachment_image_src( $thumbnail_id, 'full' );
:获取特色图片的URL。$ch = curl_init($thumbnail_url[0]);
:使用curl初始化一个新的会话,准备获取特色图片的URL。curl_setopt($ch, CURLOPT_NOBODY, true);
:设置curl选项,CURLOPT_NOBODY选项设置为true表示我们只需要获取HTTP头信息,不需要获取具体的内容。curl_exec($ch);
:执行curl会话。$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
:获取HTTP响应状态码。curl_close($ch);
:关闭curl会话。if ($httpCode != 200) {...}
:如果HTTP状态码不是200(表示请求成功),就执行括号内的代码。delete_post_thumbnail( get_the_ID() );
:删除当前文章的特色图片。add_action( 'wp', 'check_and_delete_thumbnail' );
:将check_and_delete_thumbnail
函数挂载到WordPress的’wp’钩子上,这意味着每次WordPress加载时,都会执行这个函数。
总结来说就是:这段代码的作用是:每次WordPress加载时,都会检查当前文章的特色图片是否可以正常访问,如果无法正常访问,就会删除这个特色图片。
整站特色图片/缩略图重新生成推荐
如果你想重新生成整站的特色图片,那么建议你使用:重新生成缩略图插件Regenerate Thumbnails,关于Regenerate Thumbnails的详细介绍,你可以看我下面这篇文章:
WordPress重新生成缩略图插件推荐:Regenerate Thumbnails
相关文章
之前也写过一篇:WordPress批量去除文章失效特色图片或所有特色图片,前部分也是说去除文章失效特殊图片(缩略图)的,不过之前这篇文章后面主要是说删除文章的缩略图配置。如果你目前的需求是需要一些删除文章缩略图配置的技巧,就就可以一起去看看。
最后,再为你推荐一些和wordpress特色图片设置相关的文章: