Chained Selects allow you to create dependent dropdown fields in Elementor Forms. When the user selects an option in the first field (Parent), the second field (Child) will dynamically update to show only the relevant options.
This is useful for:
• Categories → Models
• Country → Cities
• Product Type → Product Names
• Brand → Models
• Any parent-to-child selection logic
Table of contents:
1. Installation & Activation
Install the plugin like any other WordPress plugin.
Activate it from Dashboard → Plugins.
Open your Elementor Form and add the Select fields you need (e.g., Make, Year, Model).
Select a field, go to the Advanced tab, and look for Chained Select Source.
2. Add Chained Select Field
In this doc, we use an example dataset :
Category: Phone, Laptop, Tablet (parent field)
Models per Category (child field):
- Phone → Pixel 6, iPhone 14, Galaxy S22
- Laptop → MacBook Air, Dell XPS 13, ThinkPad X1
- Tablet → iPad Air, Galaxy Tab S8, Surface Go
Step 1: Add Select fields
Create two fields: Category and Model
Step 2: Choose a Chained Select Source
In the Advanced tab of the Select field, under Source, you can choose:
- Manual : uses the normal Elementor Form options (you type manually).
- CSV File: loads options from a CSV file (for example, a file with columns: make, model, year).
- Database: loads options directly from a database table.
- Default means no chaining — the Model field uses the options you type in the Content tab and ignores the parent. Use Default if the child field doesn’t depend on the parent.
Step 3: Set the condition to link parent → child
2.1 Creating a Chained Select Using Manual Mode
This mode allows you to manually define rules inside the Elementor Form widget.
Step 1: Create Your Fields
1. Add a Select field for the parent (e.g., Category)
2. Add a Select field for the child (e.g., Model)
3. Set the field IDs:
• Parent ID: categories
• Child ID: model
Step 2: Enable Chained Selects for the Child Field
1. Select the Model field.
2. Go to Advanced → Chained Selects Source.
3. Choose Manual.
Step 3: Add Manual Rules
Each rule defines what the Model field will display depending on the selected Category.
Example rule:
• Parent Field ID: categories
• Operator: =
• Value: Phone
• Options: Pixel 6, iPhone 14, Galaxy S22
Meaning:
When Category = “Phone”, Model field will show: Pixel 6, iPhone 14, Galaxy S22.
Repeat for Laptop and Tablet.

Step 4: Save and Test
Go to the frontend and confirm each selection updates correctly.
Testing checklist:
• Select Phone → Model field should show: Pixel 6, iPhone 14, Galaxy S22
• Select Laptop → Model field updates to: MacBook Air, Dell XPS 13, ThinkPad X1
• Select Tablet → Displays all tablet models
2.2 Creating a Chained Select Using a CSV File
This mode loads the chained options from a CSV file. Recommended for large datasets.
Step 1: Prepare Your CSV File
Create a CSV with two columns:
categories,model
Phone,Pixel 6
Phone,iPhone 14
Phone,Galaxy S22
Laptop,MacBook Air
Laptop,Dell XPS 13
Laptop,ThinkPad X1
Tablet,iPad Air
Tablet,Galaxy Tab S8
Tablet,Surface Go
Step 2: Upload the CSV File
You can:
• Upload to Media Library → copy file URL
• Or host it externally and paste the link
Step 3: Configure Parent Field (Category)
Under Chained Selects Source, choose CSV.
In Upload or link, either:
• Upload your CSV file
• Or paste a direct URL to the file (Google Drive, Dropbox, server, etc.)
Database Column → type the column name that matches the parent values.
For the Category field, the database column is: categories

Step 4: Configure Child Field (Model).
Under Chained Selects Source, choose CSV.
Upload the same CSV file or paste the same URL.
Set the Database Column to the column containing the model names: model
Then we tell the plugin how to filter the CSV data using the ‘Where’ condition.”
Steps:
1. In the Model field settings, scroll to the Where section.
2. Click Add Where.
3. Fill out the fields like this: categories=categories (field ID of category)
Meaning of this rule: Only show rows where the parent column matches the value selected in the Categories field.

Step 5: Save your form and test it on the frontend.
2.3 Creating a Chained Select Using Database Mode
In Database Mode, your chained select options are loaded directly from a table inside your WordPress database. This is extremely useful when you have a large dataset or when your data changes regularly and you don’t want to update the form manually.
Step 1: Prepare Your Database Table
Create table wp_chained_data (or any name).
Example structure:
id | category | model
Step 2: Configure Parent Field (Category)
Under Chained Selects Source, choose Database.
You will see settings for Table and Columns.
Fill them as follows:
• Database Table:wp_chained_data
• Database Column: Enter the column name containing the category values: categories

Step 3: Configure Child Field (Model)
Set Chained Selects Source to Database.
Fill in the database settings:
• Database Table: wp_chained_data
• Database Column: this column contains the child/related values: model
Now we need to tell the plugin how to filter the models based on the selected category. We do that using a Where condition.”
Steps:
1. In the Model field, scroll to the Where section.
2. Click Add Where.
3. Fill in the condition: categories=categories
This rule means:
Show only database rows where the categories column matches the value selected in the Category field.

Step 4: Save your form and test it on the frontend.
3. Example: Make → Year → Model
Example CSV file (cars.csv)
make,model,year
Toyota,Corolla,2020
Toyota,Camry,2021
Honda,Civic,2020
Honda,Accord,2022
Tesla,Model 3,2021
Tesla,Model S,2022
In the form:
- Make: choose Toyota
- Year: shows only 2020, 2021
- Model: shows Corolla or Camry depending on selected year
Demo Flow:
- Select a Make
- Select a Year (automatically filtered by make)
- Select a Model (automatically filtered by make + year)
Note:
- Each Select field must have a Custom ID set.
- Works with multiple levels (e.g., Make → Year → Model → Variant).
- Supports three sources: Manual, CSV, and Database.
- For CSV and Database, make sure your column names match the configuration.
- A default value in the parent field will automatically trigger loading of child options on page load.