Jak uzyskać listę wszystkich typów treści zdefiniowanych w witrynie Drupal 8?
W Drupal 7 było node_type_get_types()
, ale było przestarzałe.
Próbowałem, Entity::loadMultiple()
ale wydaje się, że to nie działa. Myślałem o utworzeniu niestandardowego zapytania, ale nie wiem, jak jest ono przechowywane w bazie danych.
loadMultiple()
,load()
orazcreate()
metody jest, aby połączyć je na klasy typu podmiot, który chcesz użyć, to dane, rodzaj i zastosowania robi powyżej dynamicznie. Jest to nieco krótsze i łatwiejsze w użyciu, ale zaleca się korzystanie z wstrzykiwanych usług, gdy jest to możliwe, więc w usłudze / kontrolerze / wtyczce wstrzykujesz menedżera typów jednostek, a następnie używasz tego. Pozwala na łatwiejsze (jednostkowe) testowanie, ale wynik jest mniej więcej taki sam.Istnieje inna funkcja pomocnicza Drupala, która nie jest przestarzała od 8.7.
node_type_get_names()
zwroty:Dokumenty API
źródło
Pod warunkiem, że w
node_type_get_names()
przyszłości zostanie uznany za przestarzały (również dobry przykładarray_map
użycia):źródło