it-swarm-id.com

Tambahkan formulir web ke tipe konten

Saya ingin membuat formulir web dan menambahkan ke tipe konten. jadi ketika pengguna membuat node, webform secara otomatis menambahkan ke node (webform sama untuk per node tipe konten).

apakah ini layak dengan webform 3?

5
user780

Anda dapat melakukannya dengan simpul referensi. Tambahkan bidang semacam itu ke jenis konten Anda. Anda selalu dapat menetapkan nilai default untuk otomatis menambahkan webform ke node, tetapi tidak menambahkan Anda secara otomatis ke formulir edit node.

Saya mengujinya dengan menggunakan referensi dan tampilan simpul, tetapi tidak menampilkan webform pada halaman edit simpul (dalam bentuk yang sama).

Anda dapat mencoba menggunakan hook_from_alter, yang berarti menambahkan bidang secara programatis dari formulir web referensi. IMO adalah satu-satunya solusi atau mungkin ada beberapa modul untuk ini, tetapi saya tidak mencarinya.

Anda juga perlu menambahkan fungsi kirim ke formulir ini, karena Anda juga perlu memfilter dan menyimpan bidang formulir web secara sistematis. Periksa WebForm API untuk ini. Banyak pekerjaan, mungkin Anda harus memikirkan solusi yang lebih baik tanpa pemrograman dan menggunakan webform sama sekali?

5
Codium

Saya baru saja menemukan ini ketika mencari hal serupa. Tentu saja ada banyak cara untuk mencapai hal ini, dan itu juga tergantung sedikit apa yang sebenarnya diinginkan untuk use case yang diberikan. Dengan ini saya maksudkan apakah webform baru harus dilampirkan ke setiap node, atau jika webform yang sama harus ditampilkan pada setiap halaman node.

Jika Anda ingin benar-benar melampirkan formulir web baru ke masing-masing node, maka Anda dapat mengaktifkan formulir web pada tipe konten itu (dari Konfigurasi > Pengaturan formulir web ). Ini memungkinkan untuk membuat formulir per node pada tipe konten itu, tetapi itu tidak membuat formulir untuk setiap node secara otomatis, itu harus dibuat per node. Ini tidak benar-benar berguna jika Anda ingin formulir yang sama untuk setiap node, tetapi jika Anda ingin formulir dibuat secara otomatis, maka ada beberapa modul untuk membantu dengan itu: https://drupal.org/project/webform_template dan https://drupal.org/project/webform_default_fields

Pendekatan lainnya adalah membuat satu formulir web dan menunjukkan formulir itu di setiap halaman simpul. Ini dapat dicapai dengan menampilkan formulir web sebagai blok dan menentukan blok untuk ditampilkan di wilayah Konten dan hanya pada jenis konten tertentu. Pertama-tama aktifkan menggunakan formulir web sebagai blok dengan mengedit simpul formulir web yang ada, klik ke tab Webform , klik Pengaturan formulir , buka Pengaturan lanjutan dan periksa Tersedia sebagai blok kotak centang. Setelah itu Anda dapat menambahkan blok dari halaman Blokir secara normal dan membatasi visibilitas ke jenis konten tertentu misalnya. Jika Anda memerlukan akses ke beberapa nilai dari simpul tempat formulir ditampilkan di formulir web, Anda bisa menambahkannya sebagai bidang tersembunyi dan membuat modul khusus yang mendapatkannya dari simpul dan menetapkan nilai ke formulir. Berikut adalah beberapa diskusi dan contoh tentang ini: https://drupal.org/node/1470748

3
Cvuorinen

Anda dapat mencoba menggunakan hook_form_alter, yang berarti menambahkan bidang pemrograman dari webform referensi. IMO adalah satu-satunya solusi tetapi apa itu IMO.

0
megi