function file_entity_entity_type_alter in File Entity (fieldable files) 8.2
Implements hook_entity_info_alter().
Extends the core file entity to be fieldable. The file type is used as the bundle key.
File
- ./
file_entity.module, line 150 - Extends Drupal file entities to be fieldable and viewable.
Code
function file_entity_entity_type_alter(&$entity_types) {
/** @var $entity_types \Drupal\Core\Entity\EntityTypeInterface[] */
$keys = $entity_types['file']
->getKeys();
$keys['bundle'] = 'type';
$entity_types['file']
->set('entity_keys', $keys)
->set('bundle_entity_type', 'file_type')
->set('admin_permission', 'administer files')
->setClass('Drupal\\file_entity\\Entity\\FileEntity')
->setFormClass('default', 'Drupal\\file_entity\\Form\\FileEditForm')
->setFormClass('edit', 'Drupal\\file_entity\\Form\\FileEditForm')
->setFormClass('inline_edit', 'Drupal\\file_entity\\Form\\FileInlineEditForm')
->setFormClass('delete', 'Drupal\\Core\\Entity\\ContentEntityDeleteForm')
->setAccessClass('Drupal\\file_entity\\FileEntityAccessControlHandler')
->set('field_ui_base_route', 'entity.file_type.edit_form')
->setLinkTemplate('canonical', '/file/{file}')
->setLinkTemplate('collection', '/admin/content/files')
->setLinkTemplate('edit-form', '/file/{file}/edit')
->setLinkTemplate('delete-form', '/file/{file}/delete')
->setLinkTemplate('inline-edit-form', '/file/{file}/inline-edit')
->setViewBuilderClass('Drupal\\file_entity\\Entity\\FileEntityViewBuilder')
->setListBuilderClass('Drupal\\Core\\Entity\\EntityListBuilder');
/*$entity_types['file']['view modes']['teaser'] = array(
'label' => t('Teaser'),
'custom settings' => TRUE,
);
$entity_types['file']['view modes']['full'] = array(
'label' => t('Full content'),
'custom settings' => FALSE,
);
$entity_types['file']['view modes']['preview'] = array(
'label' => t('Preview'),
'custom settings' => TRUE,
);
$entity_types['file']['view modes']['rss'] = array(
'label' => t('RSS'),
'custom settings' => FALSE,
);*/
// Enable Metatag support.
//$entity_types['file']['metatags'] = TRUE;
}