Guest User

Untitled

a guest
Apr 25th, 2018
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.78 KB | None | 0 0
  1. // get all paragraphs
  2. $paragraph_ids = Drupal::entityQuery('paragraph')->execute();
  3. $paragraphs = Drupal::entityTypeManager()->getStorage('paragraph')->loadMultiple($paragraph_ids);
  4. foreach ($paragraphs as $target_id => $paragraph) {
  5. // get parent entity (node, taxonomy, paragraph, etc.)
  6. $parent = $paragraph->getParentEntity();
  7. $field_name = $paragraph->parent_field_name->value;
  8.  
  9. // Check if current paragraph exists in parent entity field values
  10. $exists = FALSE;
  11. $values = $parent->get($field_name)->getValue();
  12. foreach($values as $value) {
  13. if ($value['target_id'] == $target_id) {
  14. $exists = TRUE;
  15. }
  16. }
  17.  
  18. // Delete paragraphs that aren't linked to an entity they claim as a parent
  19. if (!$exists) {
  20. $paragraph->delete();
  21. var_dump($target_id);
  22. }
  23. }
Add Comment
Please, Sign In to add comment