WordPress刪除文章的同時自動刪除縮略圖及圖片附件
編輯:狂族晨曦 來源:建站分享,WordPress技巧 日期:2015-09-12 閱讀: 2,339 次 搶個沙發 百度已收錄
最后更新時間:2015-10-10
WordPress刪除文章時,文章內所上傳到媒體庫的圖片等附件不會自動刪除,占用了網站空間,這些積累起來是相當可怕的,尤其是我們這些空間不大的學生黨們。因此下面說明通過幾行代碼的簡單方式實現在刪除文章時自動刪除縮略圖以及圖片附件,這樣就不用手動去媒體庫或者是服務器中尋找并刪除,準確而且效率高。
實現代碼
在主題下的functions.php最后一個?>前添加以下代碼:
/*
**刪除文章時刪除圖片附件
*/
function delete_post_and_attachments($post_ID) {
global $wpdb;
//刪除特色圖片
$thumbnails = $wpdb->get_results( "SELECT * FROM $wpdb->postmeta WHERE meta_key = '_thumbnail_id' AND post_id = $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');
說明
這段代碼會在刪除文章時先執行函數內容,刪除特色圖片以及圖片附件,如果在使用action delete_post而不是before_delete_post將導致刪除文章后因媒體附件與文章關聯已取消而無法正確刪除。
標簽: WordPress
本文參考自:http://www.zhiyanblog.com/wordpress-delete-post-and-thumbnail-attachments.html,由狂族晨曦(capjsj.cn)整理編輯,本文共1116個字。
本文鏈接地址:http://www.cnidcc.cn/wp_scwzdtszdscsltjtpfj.html , 轉載請保留本說明!
本文鏈接地址:http://www.cnidcc.cn/wp_scwzdtszdscsltjtpfj.html , 轉載請保留本說明!
相關文章
已有 0 位"計工"發布了激烈的評論,還有N多人圍觀笑而不語評論

川公網安備 51011202000104號