Comment lister tous les types d'entités disponibles dans Drupal using drush?
En relation:
drush eval "print_r(array_keys(entity_get_info()));"
drush eval "print_r(array_keys(\Drupal::entityTypeManager()->getDefinitions()));"
selon suggestion de Jason,
ou:
drush eval "print_r(array_keys(\Drupal::entityManager()->getDefinitions()));"
selon @ suggestion RaisinBranCrunch . Remarque \Drupal::entityManager()
est obsolète dans 8.x.
Utilisez la commande de la console drupal:
drupal debug:entity
ou (main courte):
drupal de
Cela produira une liste concise des entités disponibles dans votre instance.
Vous pouvez créer une commande drush nommée entities-list
. Créez un module, placez-le dans un fichier nommé drush_entity.drush.inc
et collez ce code:
<?php
/**
* @file
* Drush commands related to Entities.
*/
/**
* Implements hook_drush_command().
*/
function drush_entity_drush_command() {
$items['entities-list'] = array(
'description' => dt("Show a list of available entities."),
'aliases' => array('el'),
);
return $items;
}
/**
* Callback for the content-type-list command.
*/
function drush_drush_entity_entities_list() {
$entities = array_keys(entity_get_info());
sort($entities);
drush_print(dt("Machine name"));
drush_print(implode("\r\n", $entities));
}
Installez le module, exécutez drush cc drush
pour vider le cache drush et utiliser la commande comme ceci:
drush el
ou
drush entities-list
Si vous souhaitez ajouter un autre alias à la commande, ajoutez des éléments au tableau d'alias comme ceci:
'aliases' => array('el', 'another'),
Et vous pouvez utiliser ces commandes:
drush el
drush entities-list
drush another
La sortie sera toujours:
Machine name:
entity 1
entity 2
entity...
entity n
MODIFIER:
Il existe une autre solution utilisant le module Drush Entity :
drush entity-type-read