diff --git a/src/Panelizer.php b/src/Panelizer.php index e0ac976..9e2d277 100644 --- a/src/Panelizer.php +++ b/src/Panelizer.php @@ -19,6 +19,7 @@ use Drupal\Core\Session\AccountInterface; use Drupal\Core\Session\AccountProxyInterface; use Drupal\Core\StringTranslation\StringTranslationTrait; use Drupal\Core\StringTranslation\TranslationInterface; +use Drupal\Core\TypedData\TranslatableInterface; use Drupal\ctools\ContextMapperInterface; use Drupal\panelizer\Exception\PanelizerException; use Drupal\panelizer\Plugin\PanelizerEntityManager; @@ -335,7 +336,9 @@ class Panelizer implements PanelizerInterface { } $langcode = $this->languageManager->getCurrentLanguage(LanguageInterface::TYPE_CONTENT)->getId(); - if ($entity->language()->getId() != $langcode) { + if ($entity instanceof TranslatableInterface + && $entity->hasTranslation($langcode) + && $entity->language()->getId() != $langcode) { $translated_value = $entity->getTranslation($langcode)->toArray(); $translated_value['panelizer'][$panelizer_item->getName()] = $panelizer_item->getValue(); if ($entity->hasTranslation($langcode)) {