账号注册找回密码
  微信登录

奇瑰网社区

WordPress删除文章同时同时删除缩略图及图片附件的方法

[复制链接]

37

主题

56

帖子

483

积分

中级会员

Rank: 3Rank: 3

G币
2
信用
2
体力
15
发表于 2020-10-31 20:18:10 | 显示全部楼层 |阅读模式
最近很多小伙伴在问我WordPress删除文章时,文章内所上传到媒体库的图片等附件不会自动删除,占用了网站空间(虽然缙哥哥用的是vps,但是还是有很多人用了虚拟主机,空间有限),因此下面说明通过几行代码的简单方式实现在删除文章时自动删除缩略图以及图片附件,这样就不用手动去媒体库寻找并删除,准确而且效率高。
代码如下
/** * WordPress删除文章同时同时删除缩略图及图片附件的方法 * https://m.qiguiwl.com/wordpress/5282.html */$post_ID" );foreach ( $thumbnails as $thumbnail ) {wp_delete_attachment( $thumbnail->meta_value, true ); }//删除图片附件$attachments = $wpdb->get_results( "SELECT * FROM $wpdb->posts WHERE post_parent = $post_ID AND post_type = 'attachment'" );foreach ( $attachments as $attachment ) {wp_delete_attachment( $attachment->ID, true );}$wpdb->query( "DELETE FROM $wpdb->postmeta WHERE meta_key = '_thumbnail_id' AND post_id = $post_ID" );}add_action('before_delete_post', 'delete_post_and_attachments');
说明
将上述代码放到主题 functions 文件中即可使用,
其在删除文章时先执行函数内容,删除特色图片以及图片附件,如果在使用action delete_post而不是before_delete_post将导致删除文章后因媒体附件与文章关联已取消而无法正确删除。





上一篇:阿里云服务器数据如何从一个账号转移到另一个账号下(...
使用高级回帖 (可批量传图、插入视频等)

发表回复

您需要登录后才可以回帖 登录 | 账号注册   微信登录

本版积分规则   Ctrl + Enter 快速发布  

发帖时请遵守我国法律,网站会将有关你发帖内容、时间以及发帖IP地址等记录保留,只要接到合法请求,即会将信息提供给有关政府机构。
Powered by Discuz! X3.4 ( 粤ICP备20013252号-1  
Copyright © 2014-2020 奇瑰网 All Rights Reserved.
快速回复 返回顶部 返回列表