Custom Fields

Configure the ten legacy custom-value slots for events and venues without changing their database storage.

Navigation

ComponentsJEMSettingsCustom Fields

Purpose

The Custom Fields tab centralises labels, descriptions, types, order and visibility for existing custom1 to custom10 event and venue values. It preserves backwards compatibility and stores the presentation configuration separately.

Events and Venues

Configure the two contexts independently. A field named custom1 for Events can have a different type and label from custom1 for Venues.

Languages and fallbacks

Labels and descriptions are available for active Joomla content languages. If a custom value is empty, JEM can fall back to customised legacy language strings. Keep terminology consistent across detail pages and edit forms.

Safe field design

  • Use Plain text for short values, Textarea for longer unformatted text, Link for validated URLs, Safe HTML only when formatting is necessary, and Dropdown list for controlled vocabularies.
  • Do not use custom fields to collect secrets, payment-card data or unnecessary personal data.
  • Disable frontend editing for fields maintained only by trusted administrators.
  • Changing a type or dropdown options does not transform values already stored in records; audit existing data first.

Recommended use cases

  • Events: audience, skill level, accessibility, language and cancellation notes.
  • Venues: capacity, parking, accessibility, transport and available equipment.
  • Multilingual directory: translated labels/descriptions with stable controlled list values.

Configuration options

JEM provides ten persistent slots for events and ten for venues (custom1 to custom10). The same controls apply independently to every slot.

OptionValuesPractical effect
Order Drag positions 1–10 Changes presentation order without changing the underlying customN storage column.
Type Plain text, Link, Textarea, Safe HTML, Dropdown list Controls input validation and rendering. Safe HTML is filtered; it is not unrestricted HTML.
Enabled Yes / No Activates the slot for this context.
Backend Yes / No Shows the field in administrator edit forms.
Frontend Yes / No Shows the field in authorised frontend edit forms.
Detail Yes / No Allows the value to appear on the event or venue detail page.
Hide empty Yes / No Suppresses the label when the record has no value.
Label Text per active content language Supplies the public/admin label, with legacy INI values as fallback when no custom value is saved.
Description Text per active content language Provides help text for editors.
Options Semicolon-separated values for Dropdown list Defines the selectable list. Changing values does not automatically migrate old stored values.
Clear Action per slot Clears the slot's configuration; existing event/venue values remain in their storage columns.
Load language Action per context/language Loads customised legacy language values as a starting point; packaged defaults are not copied unnecessarily.
Load example Action Creates a demonstration configuration after confirmation. Review it before production use.

Saving and verification

  1. Select Save and review any validation or permission warning.
  2. Open the affected frontend view in a private browser window and as each relevant user group.
  3. Test a representative event and venue with images, attachments, access restrictions and empty optional fields.
  4. If the setting changes layout or assets, test desktop and mobile widths and clear Joomla and browser caches.
  5. Record non-default values in the site's maintenance notes before an update or migration.

Code sources

  • admin/views/settings/tmpl/default_customfields.php
  • site/classes/customfields.class.php
  • admin/models/settings.php

This article documents the current JEM 5 source tree and relevant behaviour introduced or corrected in the JEM 4.4, 4.5 and 5.0 milestones. Menu-item options can override some global display defaults. Record-level values and Joomla ACL continue to apply independently.

Related reading and implementation history