Good day,
I've been looking around for a solution to my problem, but could not find it documented anywhere. Feel free to link to another thread if useful.
I'm building a form on Wordpress using Caldera Forms. In this form, I have a multiselect dropdown for which each selection should show dynamically an extra field. Unfortunately, I cannot load more than one conditional field when selecting multiple values. It will only load the first field populated by the condition of my first selection.
Try it out:
Open https://34.95.27.135/test-caldera/
On the "Role" field, select "Software Engineer"
This should populate a "Top Skills" field
On the "Top Skills" field, if you autocomplete ANY of the options, the first condition is met and you will see the right field for it
Selecting more options from the "Top Skills" field should be populating other fields, but instead, it flicks in the view and then only shows the first met conditional field.
Anyone has had this issue? Was there anything special to do on the Conditions tab to make it work as intended?
You may Import this form by importing this JSON:
{"_last_updated":"Sun, 19 Jan 2020 23:23:23 +0000","ID":"CF5e213a11b5adc","cf_version":"1.8.9","name":"Career Matrix","scroll_top":0,"success":"Form has been successfully submitted. Thank you.\t\t\t\t\t\t\t\t\t\t\t\t","db_support":1,"pinned":0,"hide_form":1,"check_honey":1,"avatar_field":"","form_ajax":1,"custom_callback":"","layout_grid":{"fields":{"fld_97450":"1:1","fld_5750655":"1:1","fld_4465116":"1:1","fld_2852708":"1:1"},"structure":"12"},"fields":{"fld_97450":{"ID":"fld_97450","type":"filtered_select2","label":"Top Skills","slug":"your_top_skills_software_engineer","conditions":{"type":"con_9081220263929126"},"required":1,"caption":"Select your top skills.","config":{"custom_class":"","placeholder":"","multi":1,"color":"#5b9dd9","border":"#4b8dc9","default_option":"","auto_type":"","taxonomy":"category","post_type":"post","value_field":"name","orderby_tax":"name","orderby_post":"name","order":"ASC","default":"","show_values":1,"option":{"opt2039319":{"calc_value":"x","value":"x","label":"x"},"opt2036344":{"calc_value":"y","value":"y","label":"y"},"opt2092176":{"calc_value":"z","value":"z","label":"z"}},"email_identifier":0,"personally_identifying":0}},"fld_4465116":{"ID":"fld_4465116","type":"star_rating","label":"z Proficiency","slug":"z_proficiency","conditions":{"type":"con_4202235771498248"},"caption":"Rate your z proficiency","config":{"custom_class":"","default":"","number":5,"type":"star","size":13,"space":3,"color":"#FFAA00","track_color":"#AFAFAF","email_identifier":0,"personally_identifying":0}},"fld_2852708":{"ID":"fld_2852708","type":"star_rating","label":"y Proficiency","slug":"y_proficiency","conditions":{"type":"con_6383484066940033"},"caption":"Rate your y proficiency","config":{"custom_class":"","default":"","number":5,"type":"star","size":13,"space":3,"color":"#FFAA00","track_color":"#AFAFAF","email_identifier":0,"personally_identifying":0}},"fld_5750655":{"ID":"fld_5750655","type":"star_rating","label":"x Proficiency","slug":"x_proficiency","conditions":{"type":"con_5108268722503233"},"caption":"Rate your x proficiency","config":{"custom_class":"","default":"","number":5,"type":"star","size":13,"space":3,"color":"#FFAA00","track_color":"#AFAFAF","email_identifier":0,"personally_identifying":0}}},"page_names":["Page 1"],"mailer":{"on_insert":1,"sender_name":"Caldera Forms Notification","sender_email":"dube25#gmail.com","reply_to":"","email_type":"html","recipients":"","bcc_to":"","email_subject":"Career Matrix","email_message":"{summary}"},"conditional_groups":{"conditions":{"con_5108268722503233":{"id":"con_5108268722503233","name":"SE x Skill","type":"show","fields":{"cl6611176254177354":"fld_97450"},"group":{"rw1073423041345211":{"cl6611176254177354":{"parent":"rw1073423041345211","field":"fld_97450","compare":"is","value":"opt2039319"}}}},"con_6383484066940033":{"id":"con_6383484066940033","name":"SE y Skill","type":"show","fields":{"cl4932869345780543":"fld_97450"},"group":{"rw2445485636298987":{"cl4932869345780543":{"parent":"rw2445485636298987","field":"fld_97450","compare":"is","value":"opt2036344"}}}},"con_4202235771498248":{"id":"con_4202235771498248","name":"SE z Skill","type":"show","group":{"rw3854064841859657":{"cl7317560418250427":{"parent":"rw3854064841859657","field":"fld_97450","compare":"is","value":"opt2092176"}}},"fields":{"cl7317560418250427":"fld_97450"}}}},"settings":{"responsive":{"break_point":"sm"}},"privacy_exporter_enabled":false,"version":"1.8.9","db_id":"19","type":"primary"}
Thank you very much!
I have a scenario where in team leader enter his team members with their name and email id. I want to restrict team size to maximum of 10 team members. I am thinking of using Field Collection module to capture name and email values of team members. What I found is, this module provides "Add more item" button only if I select "Unlimited" in "Number of values" field for this collection. If I select "Number of values" to 10 it show 10 times "Name" and "Email". What I want is, it should show 1 set of "Name" and "Email" field, next to it should be "Add more" button which will show next "Name" and "Email" field set and so on till the count reaches 10(in my case).
Can any one help me with this or suggest me with some other module.
Thank you in advance..
Found solution to my question. Select "Unlimited" in "Number of values" field for field collection and written below code in hook_form_alter. It shows "Add more" 10 times.
if($form_id == 'form_id') {
if (isset($form['field_collection_name']['und']['#max_delta']) && $form['field_collection_name']['und']['#max_delta'] >= 10) {
unset($form['field_collection_name']['und']['add_more']);
}
}
Seems like this is a perfect scenario for the Webform Add More module. Unless you really need content types for this, would certainly recommend using the Webform. You may need to install the Webform module as a dependency for this which can allow you to quickly create forms you want for this purpose.
Another solution is to use the Custom Add Another module https://www.drupal.org/project/custom_add_another to customise the button text and the benefit is that you can have different text for the button per field per bundle.
My situation is, when I click to add new content of lets say type "project", I want the fields be prepopulated with last entered values.. Since there is more then 40 fields, i don't want to fill every field individually..
Thanks
Well the answer may not be so simple. The best way i can think of is to create a custom module, hook_form_alter the node-edit form and change the #default_value of the form fields/elements you care about.
So in the defualt_value attribute of this you could implement a custom function that brings the data you need or hardcode the values
use devel module in drupal it creates content manually for specific content type i think it useful 4 u
Currently we are migrating our intranet from plone 2.5 to drupal 7. Everything works out pretty well except one problem we are facing with the cck module.
In plone we had one content type "application" which allowed our members to applicate for a specific project. There were many input fields for describing the required qualification from other projects like in the following "image".
project description
[ ][ ] + - up down
[ ][ ] + - up down
[ ][ ] + - up down
add new row
Our member had the possibility to mention an unlimited number of projects and associated descriptions.
So the problem is, i´m unable to do anything similiar in drupal 7.
I could definitely add an unlimited node reference field and an unlimited text field, but there would not be any kind of relationship between the two fields and the user would have to click "add another entry" twice.
Another option would be the use of the module http://drupal.org/project/tablefield but its not possible to use the first column as a node reference.
I´ve browsed through every cck module available and found nothing really helping, so now i hope you can help me!
Thank you
Have you tried the field collection module?
This helps you add a collection of fields as a single field.
So you could have 'Projects' as a "field collection" type field have unlimited number of values. You can then add the individual field like the Project name, description, etc. in the field collection.
This module is for D7.
New answer to an old question (but isn't that how Drupal usually works): you might want to try the Multifield module as an alternative to Field Collection or the other solutions posted here. It's meant for this type of problem.
The module Field group is creating this relation for you.
In Drupal 6 we can do this using Flexifield The project description page of flesifield says that similar functionality can be achieved in Drupal 7 using Combo Field. But I have never tried it though. It might worth giving a try.
For Drupal 8 you can also look into the Paragraphs Module for handling a multiple field with multiple inputs. Can be used for product properties, recipes and more advanced use case where a single field can behave like a content type.
There is also a module for Drupal 7 and Drupal 8 called Double field
I need a sequence of text, image, video CCK fields, repeated twice in my content type.
I need to create 2 different groups (I don't want to use multi-upload functionality).
I was wondering if I have to create a new field Image - File Upload for the second group, or I can somehow to re-use the first one (which is already added, and I would like to add it twice in the second group as well).
thanks
Enable Content Copy module from CCK package. It provides CCK fields import/export functionality.
I've solved by creating 3 groups, and creating image1, image2, image3... video1, video2, video3, and text1, text2, text3 CCK fields. Any order is now possible.