A skin setting is a dynamic variable you can pass to a skin.
So far we have 3 types of skin settings:
- short text field
- long (markdown) text field
- code field
When creating a skin, you can dynamically create managed fields (we call them ‘settings’), for instance html code blocks or markdown text areas. This is handy for adding extra css or javascript to page headers, or adding extra sidebar detail - anything that’s one-of-a-kind and changeable by users. If you’re developing very specific skins you can even add aspects like contact details that appear in a footer as a skin setting. The users of that skin can then update the footer without needing template changes. All dynamically via the framework, of course.
We already use this for a place-holder for domain-specific Google Analytics code, but while demoing we realised that some things are more site-specific than skin-specific. You don’t want to enter these details again when you change a site’s skin! So we’re moving things around a bit: “rationalising”, we call it.
I’m also expanding skin settings so that you can add image fields (upload an image to a skin directly), select-boxes and check-boxes. This enables us to create basic, clean sets of templates that people can customize themselves by uploading a header logo, or extending the css to cater for another palette, amongst other things.
The new skin settings will best be demonstrated via the upcoming Sandbox skin, soon.