Diberi $ sid adalah id subqueue Anda:
$entity_subqueue = \Drupal::entityManager()->getStorage('entity_subqueue')->load($sid);
Memuat objek subqueue. Anda dapat memanipulasi ini untuk mengambil atau memperbarui entitas Anda.
Untuk mendapatkan barang:
$items = $entity_subqueue->get('items')->getValue();
Untuk memperbarui item, tambahkan item lain ke array $ items dan kemudian simpan objek entitas:
$items[] = ['target_id' => 69];
$entity_subqueue->set('items', $items);
$entity_subqueue->save();
Voila!
Anda dapat memeriksa di database bahwa antrian entitas Anda diperbarui:
select * from entity_subqueue__items where bundle = :sid;
Saya juga ingin menambahkan bahwa ada alternatif yang bagus untuk menggunakan entitasqueue di Drupal 8: modul Config Pages . Ini memungkinkan Anda untuk membuat bundel entitas yang hanya memiliki satu entitas. Anda kemudian dapat menambahkan jenis bidang apa pun yang Anda suka, termasuk bidang referensi entitas. Saya baru-baru ini menggantikan antrian entitas pada proyek dengan halaman konfigurasi dengan bidang referensi entitas, dan saya lebih suka pengalaman pengguna.