พื้นหลังบางส่วน: ฉันยังใหม่กับการสร้างโมดูล Drupal 8/9 ฉันต้องการให้โหนดของประเภทเนื้อหาเฉพาะได้รับการตั้งค่าสถานะโดยอัตโนมัติ
ฉันใช้งานได้โดยใช้รหัสด้านล่าง
อย่างไรก็ตาม แฟล็กที่เกี่ยวข้องยังมีฟิลด์แบบกำหนดเองที่ฉันต้องตั้งค่าด้วย
- เป็นฟิลด์อ้างอิงเอนทิตี (ไปยังโหนดอื่น)
- ฉันต้องการตั้งค่าฟิลด์อ้างอิงเอนทิตีที่กำหนดเองของแฟล็กให้เป็นค่าเดียวกับ an
ฟิลด์อ้างอิงเอนทิตีบนโหนดแฟล็ก
(สิ่งนี้อาจดูเหมือนเป็นเรื่องแปลกที่ต้องทำ อาจมีวิธีที่ดีกว่าในการบรรลุเป้าหมาย UX ฉันยังต้องการทราบวิธีการทำ)
'rf_tweaks' คือชื่อเครื่องโมดูล 'research_note' คือประเภทเนื้อหาของโหนด และ 'research_item' คือชื่อของแฟล็ก
ใช้ Drupal\node\Entity\Node;
ฟังก์ชัน rf_tweaks_node_insert (โหนด $node) {
ถ้า ($node->bundle() == 'research_note'){
$flag = \Drupal::entityTypeManager()->getStorage('flag')->load('research_item');
\Drupal::service('flag')->flag($flag, $node);
}
}
มีข้อมูลดีๆ ที่ ตั้งค่าสถานะหน้า API แต่วิธีการต่างกันมากจนทำให้ฉันไม่ชัดเจนว่าจะปรับให้เข้ากับสถานการณ์นี้ได้อย่างไร