As a Sitecore developer I love to see the community building custom fields to extend Sitecore and change the way content authors interact with the Sitecore client. Sometimes, in order to solve a business or technical problem, we need to create a custom field. Other times we build custom fields just for the fun of it! Either way I have attempted to compile an exhaustive list of custom Sitecore fields and where to find them. Thanks to all that have built them.
Custom Sitecore Fields
Available in the Sitecore Marketplace:
- Field Suite – A great module that provides A LOT of field enhancements and new fields. I specifically like the General Links Field that allows you to define a list of internal and external links in a single field (This is a common requirement).
- Google Map Location Picker – This field allows you to select a location based on address (in a Google maps popup) and the location is stored in the field as latitude and longitude.
- Multiple Images Selector – Allows users to select multiple images from the media library and shows the selected items as thumbnails.
- Unbound Droplist – This field displays a list of fixed options without creating a lookup list of items elsewhere in the content tree. Instead it stores the options as pipe delimited string values as it’s source.
- Sitecore Field Types – This module contains a bunch of new fields as mentioned below.
- Visual List – Maintain a list of image based items visually in a single field.
- Carousel – Allow users to select a single image or item out of many that are displayed in a single field as thumbnails or item icons.
- Text List – An easy way to maintain a list of items that are displayed as horizontal tags (like Facebook). Note that this field is for selecting from a predefined list of items and not for adding new items on the fly.
- Limited Single-line Text – Similar to the standard single-line text field with the option to set a character length limit for the field. Character count is also displayed (like Twitter) so editors know how many characters they have left to enter.
- Filtered Multilist – Similar to the standard Multilist field with a search box that allows you to filter items in the left hand pane.
- Color Picker – Alex Shyba’s custom field to allow users to select a color using a nice and intuitive UI.
- Account Selector Field – This field allows users to open a dialog for managing users and roles. The popup dialog provides a similar UI experience to when users use the role manager tool. The list of users or roles can also be filtered based on parameters entered into the Source property for the field.
- Inline Item List Field – Allows content authors to add/edit/remove items that populate a mutlilist field with new button options that appear above the mutlilist field instead of manually navigating to the lookup list of items to perform these actions.
- Limited Text Field – This module introduces 2 new fields that enforce a character limit for single-line text and multi-line text fields. The fields show a character count so content authors know how many characters they have left (like Twitter).
- Image Field With Cropping – A new image field that allows editors to specify a region for image cropping.
- Link List – Allows you to create a list of links (internal, internal media, external) in a single field (similar to the General Links Field in the Field Suite module).
- Custom Checklist – A customized checklist that is populated by using the Sitecore Query expression entered into the Source field.
- Specialized Treelist – This treelist field also includes search functionality that will display matching results below the multilist field based on Lucene indexes in Sitecore.
- Cross Database TreeList – Allows you to access data held in another database.
- Task Scheduler Field – Provides a nicer and more intuitive UI that allows you to set up a scheduled task. Adam Conn also provided a solution.
- Taxonomy – Allows users to add a series of delimited tags to a text field or select them from a treelist in a dialog popup. You can also manage the tag repository and add new tags in the popup window if permission allows.
Available elsewhere on the web:
- Multilist of Sitecore Users – A blog post by Mike Reynolds showing an example of how to create a custom multilist field. His example shows how to create a multilist field of users that can be filtered by domain (As well as a simple example of customizing the single-line text field).
- Droplist of Sitecore Users – A blog post by John West showing how to create a custom droplist field that allows you to select a single user (similar to the multilist example above but only one user can be selected at a time).
- Sitecore Markdown Field – A quick and dirty example of how to create a custom field in Sitecore. Created for the Bristol Sitecore User Group (SCUG).
- Static Options List – Blog post for a custom field that is populated with a static list of options that are defined in the source property for the field.
- Time Field – Allow users to select a time. Note that this differs from the standard Sitecore DateTime field because it is a time field on its own without the date field.
- Multilist for external data – This post looks at an example where the multilist field is populated with external data from a webservice.
- Dropdown list for External data – This post show an example of populating a dropdown list with data from an external XML file.
- Language Filtered Multilist – This blog post shows how to create a multilist field that will only display items that contain at least one version of the item in the content editor’s selected language.
- Flag Values Field – Use a single value to store multiple values. This is similar to how Sitecore implements the task scheduler.
- Email Validation Field – As an example, this post shows how to implement a field with a button that validates a single email. This could be a useful example for building other validation functionality into a field.
- Custom ordered treelist – An example of a custom treelist where the name of the parent item is prepended to selected items.
- Extending a Sitecore Field with a Custom Class – A custom treelist field that can be populated by adding a Sitecore query to the datasource field.
- Sitecore Date Time picker with time zone – A custom DateTime field that adds the ability for content authors to select a time zone.
The list above only includes custom fields that are meant to be used on Sitecore v6.0 and up.
I’m sure I’m missing some (or a lot) so please add a comment with any missing custom fields and I’ll add them to the list. Thanks everyone!