Faceted Search for Ultimate Member adds a configurable filter sidebar to any Ultimate Member member directory. Visitors combine filters on profile fields — country, industry, skills, job title, or any custom UM field — and see matching members update instantly over AJAX.
The plugin hooks into Ultimate Member’s native member directory (um_get_members), so member cards, pagination, sorting, and keyword search keep working as before. Facet counts refresh in real time as filters are applied, showing how many members match each option.
Key features
- Per-directory setup — enable faceted search on each Member Directory individually.
- Six filter UI types — checkbox list, radio list, dropdown, tag cloud, numeric range, and date range.
- Live facet counts — option labels show member totals (e.g. United States (24)) that update with each selection.
- AJAX filtering — no full page reload; results update through UM’s member directory.
- Multiple layouts — sidebar left, sidebar right, or horizontal top bar.
- Active filter chips — visitors see and remove active filters at a glance.
- URL state persistence — shareable filter URLs when enabled.
- Mobile-friendly — optional collapsible facet panels on small screens.
- Role-based facet visibility — show different filters to different UM roles.
- Sortable facet values — by count (high/low) or alphabetically (A–Z / Z–A).
- Meta key autocomplete — admin facet builder suggests UM profile field keys.
- Smart field detection — maps UM field types (text, select, radio, checkbox, multiselect, date, number, and more) to the correct filter logic.
- Security by default — passwords, 2FA tokens, file URLs, and other sensitive meta keys are never offered as facets.
Who is this for?
- Membership communities — help members find others by location, interests, or expertise.
- Professional directories — filter consultants, freelancers, or staff by specialty or availability.
- Alumni and association sites — browse graduates or members by class year, region, or industry.
- Niche marketplaces — narrow vendor or service listings on UM-powered directories.
- Any WordPress site using Ultimate Member directories — turn a long member list into a browsable, filterable experience.
Front-end experience
- Combine multiple facet filters at once (AND logic — members must match all active filters).
- Use facet filters together with Ultimate Member’s built-in directory search and sort.
- Clear individual filters or reset everything with Clear all.
- See a results summary (e.g. “Showing 12 of 48 members”) above the member grid.
- Keyboard-accessible facet controls for better usability.
Admin configuration
Configure everything under Ultimate Member → Member Directory → Add/Edit, in the Faceted Search metabox:
- Enable or disable faceted search per directory.
- Add facet fields mapped to UM user meta keys (profile field keys).
- Set a custom label and UI type for each facet.
- Drag to reorder facets.
- Choose layout and toggle Show Counts, Active Filter Chips, Collapsible on Mobile, and URL State Persistence.
- Set how many options appear before a facet panel collapses (“Collapse after X items”).
- Configure per-facet sort order and role visibility in advanced options.
- Set min, max, and step for numeric range facets; from/to dates for date range facets.
No shortcode is required — the filter sidebar appears automatically on directories where faceted search is enabled.
How it works
- Enable faceted search on a Member Directory and choose which profile fields become filters.
- When a visitor opens that directory, the filter sidebar renders alongside the member grid.
- Each filter selection is sent with Ultimate Member’s member query.
- The member list updates via AJAX; facet counts recalculate for the current filter combination.
- Only members matching all active filters are shown.
For developers
Hooks and filters for customization:
um_fs_before_sidebar — before the sidebar wrapper is rendered
um_fs_inside_sidebar — inside the sidebar, after the facets panel
um_fs_after_sidebar — after the sidebar closing tag
um_fs_user_card_data — filter data passed to member cards
um_fs_field_type_overrides — override detected field types by meta key
um_fs_facet_max_users — cap users scanned when building facet counts (default 5000)
um_fs_facet_base_args — adjust base WP_User_Query args used for counting