আপনি ডাটাবেসটি জিজ্ঞাসা করতে এবং অনুরূপ তালিকার আকারে ফলাফলগুলি আনতে এনটিটিফিল্ডকিউরি ক্লাস ব্যবহার করতে পারেন node_load_multiple()
।
একটি শ্রেণি তৈরি করে, শর্ত প্রয়োগ করে এবং ক্যোয়ারী কার্যকর করে এটি অর্জন করা যায়, উদাহরণস্বরূপ:
<?php
$query = new EntityFieldQuery();
$query
->entityCondition('entity_type', 'TYPE') // E.g. node, entityform, taxonomy_term
->entityCondition('bundle', 'BUNDLE')
->fieldCondition('field_foo', 'value', 'STRING')
->range(0,10);
$result = $query->execute();
?>
এটি অ্যারের যেমন তৈরি করবে:
array (
'TYPE' =>
array (
123 =>
stdClass::__set_state(array(
'nid' => '123', // Can be also tid when loading terms.
'key' => 'value',
)),
456 =>
stdClass::__set_state(array(
'nid' => '456',
'key' => 'value',
)),
),
)
বিন্যাসের ফলাফল থেকে ID আনা করার জন্য, আপনাকে ব্যবহার করতে পারেন: current(current($result))->tid
।
এখানে আরও উন্নত উদাহরণ:
<?php
$query = new EntityFieldQuery();
$query->entityCondition('entity_type', 'node')
->entityCondition('bundle', 'article')
->propertyCondition('status', NODE_PUBLISHED)
->fieldCondition('field_news_types', 'value', 'spotlight', '=')
->fieldCondition('field_photo', 'fid', 'NULL', '!=')
->fieldCondition('field_faculty_tag', 'tid', $value)
->fieldCondition('field_news_publishdate', 'value', $year . '%', 'like')
->fieldOrderBy('field_photo', 'fid', 'DESC')
->range(0, 10)
->addMetaData('account', user_load(1)); // Run the query as user 1.
$result = $query->execute();
if (isset($result['node'])) {
$news_items_nids = array_keys($result['node']);
$news_items = entity_load('node', $news_items_nids);
}
?>
দেখুন: আরও ব্যাখ্যাের জন্য কীভাবে Drupal.org এ এন্টিফিল্ডকিওয়ারি ব্যবহার করবেন।