正如你向我保证的那样,帖子标题是帖子“重复”状态的准确指示器,一点SQL和wp_delete_post()
可以做到:
$sql = "SELECT ID
FROM {$wpdb->posts}
WHERE post_title REGEXP \'^.*-[[:digit:]]*$\'
AND post_type = \'page\'";
$del = $wpdb->get_col($sql);
foreach ($del as $d) {
wp_delete_post($d);
}
如前所述,除非禁用,否则您的副本将最终进入“垃圾箱”。您可以使用。。。
wp_delete_post($d,true);
。。。强制删除。
根据以下评论:
我根据位置创建了页面,我刚刚意识到我有一些页面,比如Berwick on Tweed和Berwick on Tweed,我会Ideally like to delete the pages with the - in the title...
我忍不住认为这是一件非常危险的事情,但SQL很简单:
$sql = "SELECT ID
FROM {$wpdb->posts}
WHERE post_title LIKE \'%-%\'
AND post_type = \'page\'";