25
Mar.2020
Drupal 10: Remove all nodes from the site programmatically
Sometimes we need to completely remove all nodes, for example, when you copy a site for another project.
You can use custom code in your custom module or install devel_php and run with the admin interface on /devel/php.
Below are the examples.
$ids = \Drupal::entityQuery('node')->accessCheck(FALSE)->execute(); $storageHandler = \Drupal::entityTypeManager()->getStorage('node'); $entities = $storageHandler->loadMultiple($ids); foreach ($entities as $entity) { // Remove media created by an anonymous user only. if ($entity->getOwnerId() == 0) { $entity->delete(); } }
// Removes all nodes for Alert content type. $ids = \Drupal::entityQuery('node')->condition('type', 'social_post')->accessCheck(FALSE)->execute(); $storageHandler = \Drupal::entityTypeManager()->getStorage('node'); $entities = $storageHandler->loadMultiple($ids); foreach ($entities as $entity) { $entity->delete(); }
Comments