web-gelistirme-sc.com

EntityFieldQuery ile özel içerik türünden COUNT (*) elde etmeye çalışılıyor

drupal 7] içindeki bir sorgudan 'count (*)' değerini nasıl alabilirim? Sorgunun özel içerik türü ve özel alan içermesi gerekir.

Notlar

  • Özel İçerik Türü: çalışanlar

  • Özel Alan Adı: field_employees_email

  • Not olarak, eklemek istiyorum

    NEREDE field_employees_email = '[email protected]'

sorguya ...

Şimdiye kadar, şöyle bir şey var:

$query = new EntityFieldQuery;    

$result = $query
     ->entityCondition('entity_type', 'node')
     ->propertyCondition('status', 1) // Getting published nodes only.
     ->propertyCondition('type', 'employees') //Getting 'employees' type only.
     // How do I include custom field as part of query?
     ->execute();

Ayrıca, daha kolay bir yolu var mı

$total = count($result); 

cOUNT (*) sorgusundan dönmek için?

9
Citricguy

EntityFieldQuery :: execute () belgelerinde bildirildiği gibi EntityFieldQuery :: count () kullanabilirsiniz.

[Sonuç] Ya count() çağrılmışsa bir sayı veya saplama varlıklarının ilişkilendirilebilir dizileri dizisi.

Kullanmanız gereken kod aşağıdakine benzer:

$query = new EntityFieldQuery;

$count = $query->entityCondition('entity_type', 'node')
  ->entityCondition('bundle', 'employees')
  ->propertyCondition('status', 1) // Getting published nodes only.
  ->count()
  ->execute();

Sonucu içerik türüne göre filtrelemek için EntityFieldQuery :: entityCondition ('bundle', $ content_type) kullanmanız gerekir.
Alanlardaki koşullar için EntityFieldQuery :: fieldCondition () kullanmalısınız.

13
kiamlaluno