You can store structured data in fields with YAML. YAML is a simple structuring syntax, which is easy to understand and use.
For this example we are going to store multiple addresses in a single field:
Title: Addresses ---- Addresses: - Street: Rue de WTF 17 ZIP: 1112 City: Monaco Phone: 555-1234 Email: email@example.com - Street: 1212 Broadway ZIP: 4321 City: New York Phone: 666-4321 Email: firstname.lastname@example.org - Street: At the beach ZIP: 9999 City: The capitol of the Bahamas Phone: 777-9999 Email: email@example.com
Those addresses can be fetched and parsed very easily in your templates with the
<?php foreach(yaml($page->addresses()) as $address): ?> <div class="address"> <?= $address['street'] ?><br /> <?= $address['zip'] ?> <?= $address['city'] ?> </div> <div class="contact"> <?= $address['phone'] ?><br /> <?= $address['email'] ?> </div> </div> <?php endforeach ?>