diff -u b/core/lib/Drupal/Core/Entity/ContentEntityBase.php b/core/lib/Drupal/Core/Entity/ContentEntityBase.php --- b/core/lib/Drupal/Core/Entity/ContentEntityBase.php +++ b/core/lib/Drupal/Core/Entity/ContentEntityBase.php @@ -357,7 +357,7 @@ // Check that the bundle is translatable, the entity has a language defined // and if we have more than one language on the site. $bundles = $this->entityManager()->getBundleInfo($this->entityTypeId); - return $this->getEntityType()->isTranslatable() && (!isset($bundles[$this->bundle()]['translatable']) || $bundles[$this->bundle()]['translatable']) && !$this->getUntranslated()->language()->isLocked() && $this->languageManager()->isMultilingual(); + return (!isset($bundles[$this->bundle()]['translatable']) || $bundles[$this->bundle()]['translatable']) && !$this->getUntranslated()->language()->isLocked() && $this->languageManager()->isMultilingual(); } /** diff -u b/core/modules/content_translation/content_translation.module b/core/modules/content_translation/content_translation.module --- b/core/modules/content_translation/content_translation.module +++ b/core/modules/content_translation/content_translation.module @@ -279,8 +279,10 @@ */ function content_translation_translate_access(EntityInterface $entity) { $account = \Drupal::currentUser(); + /** @var \Drupal\content_translation\ContentTranslationManagerInterface $manager */ + $manager = \Drupal::service('content_translation.manager'); $condition = $entity instanceof ContentEntityInterface && $entity->access('view') && - !$entity->getUntranslated()->language()->isLocked() && \Drupal::languageManager()->isMultilingual() && $entity->isTranslatable() && + !$entity->getUntranslated()->language()->isLocked() && \Drupal::languageManager()->isMultilingual() && $entity->isTranslatable() && $manager->isEnabled($entity->getEntityTypeId(), $entity->bundle()) && ($account->hasPermission('create content translations') || $account->hasPermission('update content translations') || $account->hasPermission('delete content translations')); return AccessResult::allowedIf($condition)->cachePerPermissions()->addCacheableDependency($entity); }