Get nodes by content type when type key is not in root of nodes array
With an EntityFieldQuery:

$query = new \EntityFieldQuery();
$query-&gt;entityCondition('entity_type', 'node')
  -&gt;propertyCondition('type', 'page')
  -&gt;fieldCondition('field_worktype', 'value', 'foo');

$result = $query-&gt;execute();
if (!empty($result['node'])) {
  $nodes = node_load_multiple(array_keys($result['node']));
}


As an aside, the method in your OP (using the $conditions array) is deprecated in favour of EntityFieldQuery anyway, which can perform the same filters.