我需要从我的 WordPress 数据库中的自定义帖子类型中删除 _thumbnail_id 元键数据。我找到了这段代码,它允许我从所有内容中删除它,但我不希望它从我的帖子中删除它,只有我的自定义帖子类型称为“svg”,任何人都可以帮助我调整代码来这样做?
global $wpdb;
$attachments = $wpdb->get_results( "
SELECT *
FROM $wpdb->postmeta
WHERE meta_key = '_thumbnail_id'
" );
foreach ( $attachments as $attachment ) {
wp_delete_attachment( $attachment->meta_value, true );
}
$wpdb->query( "
DELETE FROM $wpdb->postmeta
WHERE meta_key = '_thumbnail_id'
" );
或者,如果你们知道从 SVG 帖子中删除 _thumbnail 元键的更好方法,请告诉我,因为我有超过 400 多个 svg 帖子,无法逐一浏览。
最佳答案
您正在寻找这样的东西吗?
DELETE m
FROM wp_postmeta m JOIN wp_posts
ON m.post_id = p.id
WHERE p.post_type = 'svg'
AND meta_key = '_thumbnail_id'
注意:在尝试删除任何内容之前,请确保您对数据库进行了可靠的备份,以防万一。
关于php - 从所有自定义帖子类型中删除 _thumbnail_id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20159013/