popsu_migrate: D7NodeTheme equipe ok +memo

This commit is contained in:
2021-04-20 12:06:25 +02:00
parent 2c72987943
commit eac183cb9a
15 changed files with 159 additions and 15 deletions

View File

@@ -11,9 +11,9 @@ source:
plugin: d7_node_theme
# node_type: popsu_special
batch_size: 500
high_water_property:
name: changed
alias: n
# high_water_property:
# name: changed
# alias: n
destination:
plugin: entity:node
@@ -76,6 +76,10 @@ process:
field_textes: field_textes
field_equipes: field_equipes
field_memo: field_memo
migration_dependencies:
required:
- d7_allpublicfiles

View File

@@ -112,6 +112,10 @@ class D7NodeTheme extends FieldableEntity {
$title = $row->getSourceProperty('title');
Drush::output()->writeln('- - - - ' . $title . '- - - - ');
$memo = '';
$memo .= "#migration : old nid = ".$nid."\n";
$memo .= "#migration : old content type = ".$type."\n";
// Get Field API field values.
foreach ($this->getFields('node', $type) as $field_name => $field) {
$field_values = $this->getFieldValues('node', $field_name, $nid, $vid, NULL);
@@ -240,6 +244,41 @@ class D7NodeTheme extends FieldableEntity {
$row->setSourceProperty('field_textes', $textes_paragraphes);
}
# equipe paragraphe
$equipe_fields = array(
'field_popsu_themtrans_equipes' => 'Equipes',
'field_popsu_themeur_equipe' => 'Equipes'
);
$equipes_paragraphes = array();
foreach ($equipe_fields as $field_name => $type) {
if ($text = $row->getSourceProperty($field_name)){
$text[0]['format'] = 'wysiwyg';
$p = Paragraph::create(['type' => 'equipes']);
$p->set('field_texte_intro', $text)
->set('field_type_equipe', $type)
->isNew();
$p->save();
$equipes_paragraphes[] = array(
'target_id' => $p->id(),
'target_revision_id' => $p->getRevisionId(),
);
}
}
if (!empty($equipes_paragraphes)) {
$row->setSourceProperty('field_equipes', $equipes_paragraphes);
}
// record migration errors in field_memo
if(isset($memo)){
$field_memo = array(
array(
'value' => $memo
)
);
$row->setSourceProperty('field_memo', $field_memo);
}
return parent::prepareRow($row);
}