Je veux récupérer des informations à partir d'un champ de tous les nœuds d'un type de contenu spécifique. Je sais comment le faire en utilisant un db_query
et en obtenant tous les ID de nœud, puis itérer dessus. Ce que j'aimerais savoir, c'est s'il y a un autre moyen de contourner cela en utilisant les fonctions drupal.
22
EntityFieldQuery
tout le chemin :) Je mets cela pour plus de postérité qu'autre choseentity_load_multiple
existe en D8. Cependant, vous ne pouvez pas charger par propriétés.Le noyau Drupal fournit une classe appelée
EntityFieldQuery()
. Il y a aussi une page de document pratique pour l'utiliser, qui a beaucoup d'exemples. Dans sa forme la plus simple:Cela chargera tous les nœuds publiés de type "page". Vous devez périodiquement l'ajuster à
pour éviter de charger trop à la fois, ce qui peut entraîner des problèmes de mémoire.
la source