Saya mencoba menambahkan peran pengguna ke pengguna yang telah menjadi anggota grup. Alur kerjanya seperti ini:
- Permintaan pengguna untuk bergabung dengan grup.
- Permintaan disetujui oleh administrator grup.
- Pengguna adalah anggota grup.
- Pengguna mendapat peran tambahan.
Saya sudah mencoba membuat aturan yang bisa melakukan ini, tetapi meskipun semua pengaturan tampak benar setelah bergabung dengan grup, pengguna tidak mendapatkan peran tambahan. Lihat di bawah tangkapan layar pengaturan aturan saya:
rules
organic-groups
rroose
sumber
sumber
Jawaban:
Sekarang Aturan Anda berjalan setelah pengguna meminta keanggotaan. Tetapi Anda harus menjalankannya setelah keanggotaan OG disetujui.
Saya menyiapkan Peraturan yang menambahkan peran "anggota" setelah keanggotaan disetujui atau jika ditambahkan oleh admin (disetujui otomatis). Ini ekspor (
4
id dari peran "anggota" drupal saya):Tangkapan layar:
Kiat: Anda dapat mengaktifkan debug Aturan (halaman
admin/config/workflow/rules/settings
) untuk melihat kapan aturan Anda dijalankan.sumber
Saya memiliki masalah yang sama (itu sebabnya saya memulai karunia).
Saya memecahkannya dengan cara ini.
Saya menambahkan fungsi ke modul khusus. Anda dapat dengan mudah membuat modul Anda sendiri dengan membuat folder baru di / situs / semua / modul dengan dua file:
yourname_module.info - >>
namaanda.module
Kemudian goto modul Anda dan aktifkan "Fungsi Kustom".
Pastikan Anda mengaktifkan kode php khusus modul.
Kemudian alih-alih tindakan tambahkan pengguna ke peran dalam aturan, tambahkan: jalankan kode php khusus dan masukkan:
Ini menambahkan pengguna ke peran, dan menghentikan skrip. Jika Anda tidak menghentikan skrip, peran tersebut tidak disimpan. Dan saya perlu menambahkan modul karena
user_save
tidak berfungsi ketika dieksekusi dicustom php code
.Jadi, saya tahu itu sangat jelek, tetapi itu bekerja untuk saya.
sumber
Versi OG apa yang Anda jalankan?
Ini adalah bug yang telah diperbaiki dengan Organic Group 2.4+ ( lihat halaman bug ).
Jika Anda sudah menjalankan versi 2.3 atau lebih rendah dari OG pembaruan harus langsung. Jika Anda menjalankan OG 1.x, Anda dapat menemukan detail lebih lanjut tentang proses pembaruan dari OG 1.5 hingga 2.4+
sumber