diff --git a/paragraphs_clean.module b/paragraphs_clean.module
index a25c22c..67ad4d3 100644
--- a/paragraphs_clean.module
+++ b/paragraphs_clean.module
@@ -7,6 +7,7 @@
 
 use Drupal\Core\Entity\EntityInterface;
 use Drupal\Core\Entity\FieldableEntityInterface;
+use Drupal\field\Entity\FieldConfig;
 
 /**
  * Implements hook_entity_update().
@@ -14,24 +15,38 @@ use Drupal\Core\Entity\FieldableEntityInterface;
  * When form updates, delete any paragraph entities that were removed.
  */
 function paragraphs_clean_entity_update(EntityInterface $entity) {
-  // Check to make sure method exists.
-  if (!($entity instanceof FieldableEntityInterface)) {
+
+  /** @var \Drupal\Core\Entity\EntityFieldManager $fieldManager */
+  $fieldManager = \Drupal::service('entity_field.manager');
+  $parentEntities = $fieldManager->getFieldMapByFieldType('entity_reference_revisions');
+
+  if (!array_key_exists($entity->getEntityTypeId(), $parentEntities)) {
+    return;
+  }
+
+  $field_definitions = [];
+  foreach ($parentEntities[$entity->getEntityTypeId()] as $field_id => $settings) {
+    if ($configField = FieldConfig::loadByName($entity->getEntityTypeId(), $entity->bundle(), $field_id)){
+      $field_definitions[] = $configField;
+    }
+  }
+
+  if (empty($field_definitions)){
     return;
   }
 
-  // Get all field definitions for this entity.
-  $field_definitions = $entity->getFieldDefinitions();
   // Loop through each field definition looking for paragraphs.
   foreach ($field_definitions as $field_definition) {
     // Check if a paragraph field with revisions.
-    if ($field_definition->getSetting('target_type') != 'paragraph' || $field_definition->getType() != 'entity_reference_revisions') {
+    if ($field_definition->getSetting('target_type') != 'paragraph') {
       continue;
     }
 
     // Get field original ids.
-    $original_ids =
-      array_column($entity->original->{$field_definition->getName()}->getValue(), 'target_id');
-
+    if ($entity->getOriginalId()) {
+      $original_ids =
+        array_column($entity->original->{$field_definition->getName()}->getValue(), 'target_id');
+    }
     // If no original ids, skip field.
     if (empty($original_ids)) {
       continue;
