Drupal: Alle veröffentlichte Nodes eines Inhaltstypes laden
Ein kleines Snippet um programmatisch alle veröffentlichten Nodes eines bestimmten Inhaltstypen laden
Alle Nodes eines Inhaltstypen lassen sich einfach über node_load_multiple laden.
$nodes = node_load_multiple(array(), array('type' => 'NODE_TYPE')))
Um jedoch nur die veröffentlichten Nodes eines Inhaltstypen zu laden, kann folgendes Snippet eingesetzt werden.
$query = new EntityFieldQuery();
$query->entityCondition('entity_type', 'node')
->entityCondition('bundle', 'NODE_TYPE')
->propertyCondition('status', 1);
$result = $query->execute();
if (!empty($result['node'])) {
$nids = array_keys($result['node']);
$nodes = node_load_multiple($nids);
return $nodes;
}
else {
return FALSE;
}