diff --git a/core/modules/content_moderation/src/Plugin/Field/ModerationStateFieldItemList.php b/core/modules/content_moderation/src/Plugin/Field/ModerationStateFieldItemList.php
index 679fca92db260a258bb393c9c4e7eeb9ae1a06db..7e717881cfd8a75da196b7457b71f626c359d664 100644
--- a/core/modules/content_moderation/src/Plugin/Field/ModerationStateFieldItemList.php
+++ b/core/modules/content_moderation/src/Plugin/Field/ModerationStateFieldItemList.php
@@ -81,6 +81,7 @@ protected function loadContentModerationStateRevision(ContentEntityInterface $en
       // being reverted.
       ->condition('content_entity_revision_id', $entity->isNewRevision() ? $entity->getLoadedRevisionId() : $entity->getRevisionId())
       ->condition('workflow', $moderation_info->getWorkflowForEntity($entity)->id())
+      ->condition('langcode', $entity->language()->getId())
       ->allRevisions()
       ->sort('revision_id', 'DESC')
       ->execute();
diff --git a/core/modules/content_moderation/tests/src/Kernel/ModerationStateFieldItemListTest.php b/core/modules/content_moderation/tests/src/Kernel/ModerationStateFieldItemListTest.php
index 0e74b1ae0e7315bca4d8fba58223b982c22b9f69..92423626c58096be50c640e551de4a31df965eb6 100644
--- a/core/modules/content_moderation/tests/src/Kernel/ModerationStateFieldItemListTest.php
+++ b/core/modules/content_moderation/tests/src/Kernel/ModerationStateFieldItemListTest.php
@@ -401,4 +401,33 @@ public function testWithExistingUnmoderatedContent() {
     $this->assertEquals('published', $translation->moderation_state->value);
   }
 
+  /**
+   * Tests field item list translation support with unmoderated content.
+   */
+  public function testTranslationWithExistingUnmoderatedContent() {
+    $node = Node::create([
+      'title' => 'Published en',
+      'langcode' => 'en',
+      'type' => 'unmoderated',
+    ]);
+    $node->setPublished();
+    $node->save();
+
+    $workflow = Workflow::load('editorial');
+    $workflow->getTypePlugin()->addEntityTypeAndBundle('node', 'unmoderated');
+    $workflow->save();
+
+    $translation = $node->addTranslation('de');
+    $translation->moderation_state = 'draft';
+    $translation->save();
+
+    $node_storage = $this->container->get('entity_type.manager')->getStorage('node');
+    $node = $node_storage->loadRevision($node_storage->getLatestRevisionId($node->id()));
+
+    $this->assertEquals('published', $node->moderation_state->value);
+    $this->assertEquals('draft', $translation->moderation_state->value);
+    $this->assertTrue($node->isPublished());
+    $this->assertFalse($translation->isPublished());
+  }
+
 }