The trick is in naming the fields:
You have core fields for email, subject etc such as:
<label for="from">Email *</label>
<input type="email" id="from" name="from" value="" required>
<label for="subject">Subject *</label>
<input type="text" id="subject" name="subject" value="Contact Form">
Then for other fields you need to use name="message[]"
for each input, examples:
<label for="message">Message *</label>
<textarea id="message" name="message[]" required></textarea>
<label for="cheese">Whats' your favourite cheese?</label>
<input type="hidden" name="message[]" value="---CHEESE---"> <!-- pass hidden input name to email -->
<input type="text" id="cheese" name="message[]" value="">
<label for="phone">Phone</label>
<input type="hidden" name="message[]" value="---PHONE---"> <!-- pass hidden input name to email -->
<input type="tel" id="phone" name="message[]" value="">
Packet Tide owns and develops ExpressionEngine. © Packet Tide, All Rights Reserved.