Relationships Between Collections

Developer documentation

We have just added the ability to relate any collection to any other collection. This allows you to very easily (with a simple tweak to a configuration file) do things like:

  • Feature what staff work at what stores (with a link to each staff member’s profile)
  • Display what services a staff member specialises in or vice versa
  • Feature key staff involved in different projects
  • Link testimonials to stores
  • Display blog posts that a staff member has contributed to on their staff profile page
  • Any number of other ways your custom data might be related to each other.
  • Related elements can be configured in a number of ways to feature differently on the detail page of any collection - as a list of links in a sidebar, as a row of summary listing cards at the bottom of the page, or on a different tab.
  • Creating a link to a related item the system will automatically add the back link from the item that you are linking to
    You can over-ride this link by setting a link directly on the item that you are linking to to any other item

Example: Tab based display showing related projects, with related services as a list of links in the sidebar image

Example: List of projects as cards under the main content with related services in the sidebar image (1)

Filtering collections

Developer documentation

We have also just added the ability to easily define a group of filters to apply to a collection. There are different types of filters you can define:

  • Any field stored against an entry
  • A related collection - e.g. if staff are related to services, you could filter staff by what service they are associated with
  • A general text search (which can be configured to search any field against an entry)

You can then configure each filter specifying things like a label; placeholder text to show when the filter is not showing.

The system will automatically generate dropdowns of acceptable options for each filter from the stored data (apart from the free text general search), and then show all filters on screen using one of a few different available themes/styles.

The filtering is done directly in the user’s web browser - meaning that all searches (even typed free text searches) happen instantaneously with no waiting for loading spinners while data is fetched from the server.

An example of one theme image (2)

Same filters, different theme image (3)

The great thing about this new feature is how quickly (& cheaply) it can be configured. Usually to get this type of functionality working it would take many hours of development & testing. And for a much lower-quality outcome.

With the new functionality, the most that is required to make the above filtering work is the following entry in the collection definition:

image (4)