Saya menggunakan Drupal 8.1 dengan Aturan 8.x-3.0-alpha1.
Saya ingin membuat aturan untuk mengirim email ke pembuat node ketika komentar baru diposting ke node ini. Masalahnya adalah saya tidak mendapatkan alamat email penulis dengan aturan karena dataset memberi saya hanya nilai-nilai ini: @ node.node_route_context: node atau komentar tetapi di bawah komentar saya tidak menemukan apa pun seperti komentar: node: author. Di Drupal 7 saya punya data ini. Apa yang harus saya lakukan di Drupal 8?
Jawaban:
Jawaban yang Diperbarui
Sementara menguji ini pada instalasi baru Drupal 8 dengan Aturan (Alpha 2) saya telah menemukan bug yang mencegah tes yang sukses ini, sementara pemilih data di bawah ini benar saya saat ini tidak dapat mereproduksi aturan kerja.
Laporan bug ada di sini: https://www.drupal.org/node/2770291 - Untuk meringkas masalah ini Aturan mengharapkan TO: parameter menjadi array dan akan melempar kesalahan ketika melewati token alamat email di bawah ini yang mengembalikan tali.
Jawaban awal saya berlaku untuk Drupal 7 namun untuk Drupal 8 situasinya tampak lebih sederhana dan bergantung pada satu fakta yang belum terdokumentasi dengan baik.
Di D7 kita terbiasa dengan sintaksis yang menyerupai:
comment:node:author:mail
Dalam D8 pemilih yang sama (yang berfungsi) adalah:
comment.entity_id.entity.uid.entity.mail.value
Semoga ini bisa membantu, saya akan meninggalkan jawaban sebelumnya di bawah jika itu membantu orang lain.
Jawaban Sebelumnya
* Secara umum dengan Aturan untuk menggunakan nilai bidang, aturan terlebih dahulu harus secara khusus memeriksa keberadaan bidang (yaitu bahwa bidang memiliki nilai dalam konteks aturan berjalan). Jika Anda belum mencoba ini, Anda mungkin ingin mencoba menambahkan kondisi "Entity has field" ke aturan untuk memeriksa keberadaan alamat email. Ini kemudian harus memperlihatkan token untuk bidang tersebut.
Saya pernah mengalami masalah serupa yang mengeksekusi aturan menggunakan hubungan entitas (yang lebih atau kurang apa yang Anda lakukan dengan mereferensikan penulis dari node) memeriksa keberadaan bidang (dalam kasus Anda kemungkinan besar cek bahwa entitas memiliki penulis (ini harus membuka akses ke objek pengguna) kemudian cek terhadap objek pengguna untuk memastikannya memiliki alamat email) membuka token bidang yang tersedia dari entitas yang direferensikan. *
sumber
Ada contoh yang berfungsi dalam antrian masalah Peraturan yang diposting pada November 2016, jadi ini sudah dimungkinkan setidaknya sejak saat itu. Lihat https://www.drupal.org/project/rules/issues/2828422
Inilah versi yang sedikit dimodifikasi dari jawaban itu. Anda dapat mengimpor ini ke situs Anda dan melihatnya di UI untuk mempelajari cara mengkonfigurasi fungsi ini.
sumber