diff --git a/modules/newsroom_connector_item/migrations/migrate_plus.migration.newsroom_item_image_media.yml b/modules/newsroom_connector_item/migrations/migrate_plus.migration.newsroom_item_image_media.yml index 98d9eb0..6c9fd17 100644 --- a/modules/newsroom_connector_item/migrations/migrate_plus.migration.newsroom_item_image_media.yml +++ b/modules/newsroom_connector_item/migrations/migrate_plus.migration.newsroom_item_image_media.yml @@ -22,6 +22,10 @@ source: name: item_id label: 'Item ID' selector: 'infsonewsroom:BasicId/text()' + - + name: title + label: Title + selector: 'title[@lang="EN"]/text()' - name: item_name label: Name diff --git a/modules/newsroom_connector_item/newsroom_connector_item.module b/modules/newsroom_connector_item/newsroom_connector_item.module index 775d0d5..c73e091 100644 --- a/modules/newsroom_connector_item/newsroom_connector_item.module +++ b/modules/newsroom_connector_item/newsroom_connector_item.module @@ -80,13 +80,20 @@ function newsroom_connector_item_migrate_prepare_row( // Set title as alt text if it is empty. if (strpos($migration_id, 'newsroom_item_image_media_translations') !== FALSE || $migration_id == 'newsroom_item_image_media') { - $newsroom_item_title = $row->getSourceProperty('item_name'); - $image_alt = $row->getSourceProperty('image_alt'); + $picture_title = $row->getSourceProperty('item_name'); + if (empty($picture_title)) { + // Set item title as picture title if it's empty. + $picture_title = $row->getSourceProperty('title'); + $row->setSourceProperty('image_alt', $picture_title); + $row->setSourceProperty('item_name', $picture_title); + } + $image_alt = $row->getSourceProperty('image_alt'); if (empty($image_alt)) { - $row->setSourceProperty('image_alt', $newsroom_item_title); + $row->setSourceProperty('image_alt', $picture_title); } } + } /** diff --git a/modules/newsroom_connector_item/src/Plugin/migrate/NewsroomItemImageMediaLanguageDeriver.php b/modules/newsroom_connector_item/src/Plugin/migrate/NewsroomItemImageMediaLanguageDeriver.php index 9c89420..3a4bd55 100644 --- a/modules/newsroom_connector_item/src/Plugin/migrate/NewsroomItemImageMediaLanguageDeriver.php +++ b/modules/newsroom_connector_item/src/Plugin/migrate/NewsroomItemImageMediaLanguageDeriver.php @@ -22,6 +22,13 @@ protected function getDerivativeValues(array $base_plugin_definition, LanguageIn 'default_value' => $language_id, ]; + // Title. + $base_plugin_definition['source']['fields'][] = [ + 'name' => 'title', + 'label' => 'Title', + 'selector' => 'title[@lang="' . $language_code . '"]/text()', + ]; + // Name. $base_plugin_definition['source']['fields'][] = [ 'name' => 'image_name', diff --git a/modules/newsroom_connector_service/newsroom_connector_service.module b/modules/newsroom_connector_service/newsroom_connector_service.module index a46311d..41b74d9 100644 --- a/modules/newsroom_connector_service/newsroom_connector_service.module +++ b/modules/newsroom_connector_service/newsroom_connector_service.module @@ -20,11 +20,11 @@ function newsroom_connector_service_migrate_prepare_row( // Set title as alt text if it is empty. if (strpos($migration->id(), 'newsroom_service_logo_media_translations') !== FALSE || $migration->id() == 'newsroom_service_logo_media') { - $newsroom_item_title = $row->getSourceProperty('item_name'); $image_alt = $row->getSourceProperty('image_alt'); if (empty($image_alt)) { - $row->setSourceProperty('image_alt', $newsroom_item_title); + $title = $row->getSourceProperty('service_name'); + $row->setSourceProperty('image_alt', $title); } } } diff --git a/modules/newsroom_connector_service/src/Plugin/migrate/NewsroomServiceLogoLanguageDeriver.php b/modules/newsroom_connector_service/src/Plugin/migrate/NewsroomServiceLogoLanguageDeriver.php index 18af060..07d2496 100644 --- a/modules/newsroom_connector_service/src/Plugin/migrate/NewsroomServiceLogoLanguageDeriver.php +++ b/modules/newsroom_connector_service/src/Plugin/migrate/NewsroomServiceLogoLanguageDeriver.php @@ -16,6 +16,12 @@ class NewsroomServiceLogoLanguageDeriver extends BaseNewsroomLanguageDeriver { protected function getDerivativeValues(array $base_plugin_definition, LanguageInterface $language, $language_code) { $language_id = $language->getId(); + $base_plugin_definition['source']['fields'][] = [ + 'name' => 'service_name', + 'label' => 'Name', + 'selector' => 'title[@lang="' . $language_code . '"]/text()', + ]; + $base_plugin_definition['process']['langcode'] = [ 'plugin' => 'default_value', 'default_value' => $language_id,