Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement a "Preset" system for Theme Options/CSS #42

Open
BoweFrankema opened this issue Aug 23, 2012 · 0 comments
Open

Implement a "Preset" system for Theme Options/CSS #42

BoweFrankema opened this issue Aug 23, 2012 · 0 comments
Assignees

Comments

@BoweFrankema
Copy link
Collaborator

One idea that Marshall and I have been throwing around is a preset system where you can quickly apply a set of options. These "presets" can be imported/exported and shared with the rest of the community. This would allow us to make a preset called "CUNY" which would be the default preset. This would include the stuff we like (dark background, striped background pattern etc). Out of the box a new CBOX site have this preset applied.

The huge advantage with these presets is that our design decisions can then be changed by simply selecting another preset in the option panels;

CUNY (default)
Bare Bones (super basic)
Readability (bigger fonts and huge contrast)

Not only would this solve a lot of issues it could also lead to a nice amount of user generated presets.

In terms of implementation there are a few things that need to be developed:

Initial ideas of how this could work

  1. A folder is created where these presets are stored/dropped (like extensions). This folder lives in the child theme so it's safe from upgrades. something like engine/presets
  2. These presets would contain a few files to make up the preset

I think we should limit it to the following functionality to keep things simple and managable.

 preset.xml (contains the theme option data)
 assets/images (custom images for background/textures)
 style.css (possible changes that are being slurped at the end of dynamic.css)
 options.ini (in case existing options need to be modified or new CSS options are added)
 infinity.ini (to optionally turn off core stylesheets like buttons/design-style/icons etc)
  1. Once a Preset is added the user can select one through the "Global" options on his dashboard. Here's a mock-up

Mockup

  1. Once a preset has been applied it will overwrite the existing CORE settings. The options and settings from extensions or child themes remain present. The only possible options that can be affected/overwritten are the "CSS" option types.
@ghost ghost assigned MrMaz Aug 23, 2012
MrMaz added a commit to PressCrew/cbox-theme that referenced this issue May 5, 2013
@boonebgorges boonebgorges modified the milestones: 1.1, Future Release Oct 22, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants