你可以利用wp_remove_object_terms()
从帖子中删除所需类别。
我们将要做的是,运行一个自定义查询来获取所有具有关联类别的帖子,然后循环浏览这些帖子并使用wp_remove_object_terms()
删除类别
注意事项:代码未经测试,可能有问题。请确保首先在本地进行测试
如果您有大量帖子,这可能会由于超时而导致致命错误。为了避免这种情况,请使用较少的POST数运行该函数几次,直到整个操作完成
代码:
add_action( \'init\', function()
{
// Get all the posts which is assigned to the uncategorized category
$args = [
\'posts_per_page\' => -1, // Adjust as needed
\'cat\' => 1, // Category ID for uncategorized category
\'fields\' => \'ids\', // Only get post ID\'s for performance
// Add any additional args here, see WP_Query
];
$q = get_posts( $args );
// Make sure we have posts
if ( !$q )
return;
// We have posts, lets loop through them and remove the category
foreach ( $q as $id )
wp_remove_object_terms(
$id, // Post ID
1, // Term ID to remove
\'category\' // The taxonomy the term belongs to
);
}, PHP_INT_MAX );
您只需将其放入函数文件中,然后加载任何页面后端或前端。然后可以从函数文件中删除代码