class ForumVocabulary

Same name in other branches
  1. 8.9.x core/modules/taxonomy/src/Plugin/migrate/process/ForumVocabulary.php \Drupal\taxonomy\Plugin\migrate\process\ForumVocabulary
  2. 10 core/modules/forum/src/Plugin/migrate/process/ForumVocabulary.php \Drupal\forum\Plugin\migrate\process\ForumVocabulary
  3. 10 core/modules/taxonomy/src/Plugin/migrate/process/ForumVocabulary.php \Drupal\taxonomy\Plugin\migrate\process\ForumVocabulary
  4. 11.x core/modules/forum/src/Plugin/migrate/process/ForumVocabulary.php \Drupal\forum\Plugin\migrate\process\ForumVocabulary

Checks if the vocabulary being migrated is the one used for forums.

Drupal 8 Forum is expecting specific machine names for its field and vocabulary names. This process plugin forces a given machine name to the field or vocabulary that is being migrated.

The 'forum_vocabulary' source property is evaluated in the d6_taxonomy_vocabulary or d7_taxonomy_vocabulary source plugins and is set to true if the vocabulary vid being migrated is the same as the one in the 'forum_nav_vocabulary' variable on the source site.

Example:


process:
  field_name:
    plugin: forum_vocabulary
    machine_name: taxonomy_forums

Plugin annotation


@MigrateProcessPlugin(
  id = "forum_vocabulary"
)

Hierarchy

Expanded class hierarchy of ForumVocabulary

File

core/modules/taxonomy/src/Plugin/migrate/process/ForumVocabulary.php, line 34

Namespace

Drupal\taxonomy\Plugin\migrate\process
View source
class ForumVocabulary extends ProcessPluginBase {
    
    /**
     * {@inheritdoc}
     */
    public function transform($value, MigrateExecutableInterface $migrate_executable, Row $row, $destination_property) {
        if ($row->getSourceProperty('forum_vocabulary') && !empty($this->configuration['machine_name'])) {
            $value = $this->configuration['machine_name'];
        }
        return $value;
    }

}

Members

Title Sort descending Modifiers Object type Summary Overriden Title Overrides
ForumVocabulary::transform public function Performs the associated process. Overrides ProcessPluginBase::transform
PluginInspectionInterface::getPluginDefinition public function Gets the definition of the plugin implementation. 6
PluginInspectionInterface::getPluginId public function Gets the plugin_id of the plugin instance. 2
ProcessPluginBase::multiple public function Indicates whether the returned value requires multiple handling. Overrides MigrateProcessInterface::multiple 3

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.