diff --git a/core/lib/Drupal/Core/Entity/FieldableEntityStorageControllerBase.php b/core/lib/Drupal/Core/Entity/FieldableEntityStorageControllerBase.php
index 61f005930c41847b3d40e051b00131975e7eb25d..b89625dc9a5d2edd50075f7e5e8f2639bf6145be 100644
--- a/core/lib/Drupal/Core/Entity/FieldableEntityStorageControllerBase.php
+++ b/core/lib/Drupal/Core/Entity/FieldableEntityStorageControllerBase.php
@@ -337,7 +337,7 @@ protected function invokeTranslationHooks(ContentEntityInterface $entity) {
   protected function invokeFieldMethod($method, ContentEntityInterface $entity) {
     foreach (array_keys($entity->getTranslationLanguages()) as $langcode) {
       $translation = $entity->getTranslation($langcode);
-      foreach ($translation as $field) {
+      foreach ($translation->getProperties(TRUE) as $field) {
         $field->$method();
       }
     }