function Menu::fields

Returns available fields on the source.

Return value

array Available fields in the source, keys are the field machine names as used in field mappings, values are descriptions.

Overrides MigrateSourceInterface::fields

2 calls to Menu::fields()
MenuTest::fields in core/modules/migrate_drupal_ui/tests/modules/migrate_drupal_message_test/src/Plugin/migrate/source/MenuTest.php
Returns available fields on the source.
MenuTranslation::fields in core/modules/system/src/Plugin/migrate/source/d7/MenuTranslation.php
Returns available fields on the source.
2 methods override Menu::fields()
MenuTest::fields in core/modules/migrate_drupal_ui/tests/modules/migrate_drupal_message_test/src/Plugin/migrate/source/MenuTest.php
Returns available fields on the source.
MenuTranslation::fields in core/modules/system/src/Plugin/migrate/source/d7/MenuTranslation.php
Returns available fields on the source.

File

core/modules/system/src/Plugin/migrate/source/Menu.php, line 32

Class

Menu
Drupal 6/7 menu source from database.

Namespace

Drupal\system\Plugin\migrate\source

Code

public function fields() {
  $fields = [
    'menu_name' => $this->t('The menu name. Primary key.'),
    'title' => $this->t('The human-readable name of the menu.'),
    'description' => $this->t('A description of the menu'),
  ];
  // The database connection may not exist, for example, when building
  // the Migrate Message form.
  if ($source_database = $this->database) {
    if ($source_database->schema()
      ->fieldExists('menu_custom', 'language')) {
      $fields += [
        'language' => $this->t('Menu language.'),
        'i8n_mode' => $this->t('Menu i18n mode.'),
      ];
    }
  }
  return $fields;
}

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