diff --git a/core/modules/field/field.module b/core/modules/field/field.module
index 3988f25..ee0ae2d 100644
--- a/core/modules/field/field.module
+++ b/core/modules/field/field.module
@@ -67,7 +67,8 @@ function field_help($route_name, RouteMatchInterface $route_match) {
$output .= '
' . t('Uses') . '
';
$output .= '';
$output .= '- ' . t('Enabling field types') . '
';
- $output .= '- ' . t('The Field module provides the infrastructure for fields and field attachment; the field types and input widgets themselves are provided by additional modules. Some of the modules are required; the optional modules can be enabled from the Extend administration page. Additional fields and widgets may be provided by contributed modules, which you can find in the contributed module section of Drupal.org.', array('!modules' => \Drupal::url('system.modules_list'), '!contrib' => 'https://drupal.org/project/modules'));
+ $output .= '
- ' . t('The Field module provides the infrastructure for fields and field attachment; the field types and input widgets themselves are provided by additional modules and core. Some of the modules are required; the optional modules can be enabled from the Extend administration page. Additional fields and widgets may be provided by contributed modules, which you can find in the contributed module section of Drupal.org.', array('!modules' => \Drupal::url('system.modules_list'), '!contrib' => 'https://drupal.org/project/modules')) . '
';
+ $output .= '
';
// Make a list of all widget and field modules currently enabled, ordered
// by displayed module name (module names are not translated).
@@ -75,6 +76,25 @@ function field_help($route_name, RouteMatchInterface $route_match) {
$info = system_get_info('module');
$field_widgets = \Drupal::service('plugin.manager.field.widget')->getDefinitions();
$field_types = \Drupal::service('plugin.manager.field.field_type')->getUiDefinitions();
+ // Build a list of core field types.
+ $core_field_types = array();
+ foreach ($field_types as $field_type_name => $field_type) {
+ if ($field_type['provider'] == 'core') {
+ if (!empty($field_type['description'])) {
+ $core_field_types[$field_type_name] = (string) $field_type['label'] . ' - ' . (string) $field_type['description'];
+ }
+ else {
+ $core_field_types[$field_type_name] = (string) $field_type['label'];
+ }
+ }
+ }
+ $output .= t('Field types provided by core:');
+ $item_list = array(
+ '#theme' => 'item_list',
+ '#items' => $core_field_types,
+ );
+ $output .= drupal_render($item_list);
+
$providers = array();
foreach (array_merge($field_types, $field_widgets) as $plugin) {
$providers[] = $plugin['provider'];
@@ -95,7 +115,7 @@ function field_help($route_name, RouteMatchInterface $route_match) {
}
}
if ($items) {
- $output .= ' ' . t('Currently enabled field and input widget modules:');
+ $output .= '
' . t('Currently enabled field and input widget modules:');
$item_list = array(
'#theme' => 'item_list',
'#items' => $items,