I use this code in my module for random query:
$query = new EntityFieldQuery();
$query
->entityCondition('entity_type', 'node')
->entityCondition('bundle', 'client')
->fieldCondition('field_client_enabled', 'value', 1)
->addTag('random')
->range(0, 1)
->execute;
with additional function:
function mymodule_query_random_alter($query) {
$query->orderRandom();
}
But why I get "undefined method" error when use
$query = new EntityFieldQuery();
$query
->entityCondition('entity_type', 'node')
->entityCondition('bundle', 'client')
->fieldCondition('field_client_enabled', 'value', 1)
->orderRandom() // why is this wrong?
->range(0, 1)
->execute;
?
Update:
Answer:
Found that orderRandom() is SelectQuery function, but not EntityFieldQuery
Can I simplify first code to variant without additional function?