it-swarm-vi.com

Đang cố gắng lấy COUNT (*) từ loại nội dung tùy chỉnh với EntityFieldQuery

Làm cách nào tôi có thể truy xuất 'Count (*)' từ truy vấn trong drupal 7? Truy vấn cần bao gồm loại nội dung tùy chỉnh và trường tùy chỉnh.

Ghi chú

  • Loại nội dung tùy chỉnh: nhân viên

  • Tên trường tùy chỉnh: field_empologists_email

  • Lưu ý, tôi đang tìm cách thêm

    WHERE field_empologists_email = '[email protected]'

truy vấn ...

Cho đến nay, tôi có một cái gì đó như:

$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();

Ngoài ra, có một cách dễ dàng hơn

$total = count($result); 

để trả về COUNT (*) từ truy vấn?

9
Citricguy

Bạn có thể sử dụng EntityFieldQuery :: Count () , như được báo cáo trong tài liệu cho EntityFieldQuery :: exec () .

[Kết quả là] Hoặc là một số nếu count() được gọi hoặc một mảng các mảng kết hợp của các thực thể còn sơ khai.

Mã bạn nên sử dụng tương tự như mã sau:

$query = new EntityFieldQuery;

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

Để lọc kết quả theo loại nội dung, bạn cần sử dụng EntityFieldQuery :: entityCondition ('bundle', $ content_type) .
[.__.] Đối với các điều kiện trên các trường, bạn nên sử dụng EntityFieldQuery :: fieldCondition () .

13
kiamlaluno