Skip to main content

Adding jquery.ui's themeroller to plone 4 for easy theme customization.

Project description


zettwerk.ui integrates jquery.ui’s themeroller based themes into Plone 4.x. Themeroller is a tool to dynamically customize the jquery.ui css classes. For details about jquery.ui theming and themeroller see

See it in action:

Note: with version 2.0 the dynamic integration of the themeroller widget stops working. But you can include manually downloaded themes. Follow the instructions on the “add theme” page linked on the Zettwerk UI Themer conrol panel. For future versions, it is planned to add a custom widget with live preview again. To see how it worked with versions below 2.0 see


With this add-on it is very easy to adapt the look and color scheme of your plone site. After installation, there is a new extension product listed in the plone controlpanel which is called “Zettwerk UI Themer”. See the instructions given on that page to choose and add themes.

Feel free to contact us for feedback.

Technical background and pre 1.0 versions

For versions below 1.0 zettwerk.ui made heavy use of javascript to manipulate the dom and css of the generated output page. This was ok for prototyping but probably not for production. Especially slower browsers shows some kind of flickering, till all manipulations were applied. With version 1.0, the complete concept to do most of the manipulation changed to xsl-transforms, applied via diazo / This results in a much better user experience. On the other hand, zettwerk.ui acts now as a skin (while the former one was none).


Add zettwerk.ui to your buildout eggs:

eggs = ..

After running buildout and starting the instance, you can install Zettwerk UI Themer via portal_quickinstaller to your plone instance. zettwerk.ui requires Plone 4.1 cause it depends on If you want to use zettwerk.ui in Plone 4.0 you can also use version 0.40, which is the last one, (officially) supporting Plone 4.0.x.

Filesystem dependency

Created themes are downloaded to the servers filesystem. So a directory is needed, to store these files. At the moment, this is located always relative from your INSTANCE_HOME: ../../zettwerk.ui.downloads. In a common buildout environment, that is directly inside your buildout folder.

Deployment and reuse of themes

You can easily move the dowloaded themes from the download folder from one buildout instance to another. So to deploy a theme just copy the folder with the name of your theme from your develop server to your live server. It should be immediatelly available (without restart) - but only if the download folder was already created.


2.0 (2014-04-15)

  • Plone 4.3 compatibility (for < 4.3 use < 2.0)

  • removed themeroller integration

  • added instructions for manual theme integration

  • added z-index for dialog boxes to avoid overlapping with the edit bar

  • updated german translations

  • added theme uninstall via uninstall profile

1.1.0 (2012-09-21)

  • Removed checkbox and radiobox handling.

1.0.5 (2012-08-17)

  • Fixed Install error with newer collective.js.jqueryui versions

  • Plone 4.2 compatibility and tests

1.0.4 (unreleased)

  • Fixed action menu display

1.0.3 (2012-03-17)

  • Pinned to avoid zmi styling

  • Fully removed “not-zmi” styling rules

1.0.2 (2012-03-12)

  • Fixed related Items and categorisation (#4)

1.0.1 (2011-10-21)

  • Fixed manage portlet links (#3)

  • Fixed setuphandler execution

1.0 (2011-06-23)

  • re-added radio box styling

  • tuned rules.xml to not style zmi pages

  • Add french translation [toutpt]

  • Updated spanish translation [macagua]

1.0rc1 (2011-06-12)

  • Major rewrite to apply manipulations via

  • removed “settings” panel.

0.40 (2011-05-28)

  • removed own jquery.ui integration and use collective.js.jqueryui (reinstall via quickinstall required!)

  • collective.js.jqueryui’s sunburst theme integrated with special resource handling

  • re-added validation of theme name characters

  • made the font size of the default start theme a little smaller

  • udpated pot file and german translations

  • sorting of theme names

0.34 (2011-05-17)

  • IE7 Fix for global tabs

0.33 (2011-05-06)

  • do not show the “enable cookie” status message, it it is not visible

0.32 (2011-04-30)

  • Show Uninstall in Title of profile to not confuse plone-admins ;-) [jensens]

  • handle BadZipfile exceptions

  • updated jquery.ui to 1.8.12

0.31 (2011-03-07)

  • added tests

  • added selenium tests

  • updated jquery.ui to 1.8.10

  • tested on plone 4.0.x and 4.1.x

0.30 (2011-02-16)

  • added Spanish translation [macagua]

  • changed control panel gui and usage of download handling

  • added translatable strings for control panel javascripts

  • changed some imports (for Plone 4.1 compatibility)

  • pep8 cleanups

  • updated jquery.ui to 1.8.9

0.28 (2011-01-11)

  • Back to old version numbering schema - to make buildout updates work.

0.2.7 (2011-01-11)

  • Fixed version numbering

  • replaced $ with jq to fix gui for authenticated IE users

0.26 (2010-12-15)

  • updated jquery.ui to 1.8.7 (reinstall via quick-installer required)

  • changed ui base resource integration to avoid required reinstalls for the upcoming ui updates

0.25 (2010-11-23)

  • made enableTabs work with <dl class=”enableFormTabbing”> based tabs

0.24 (2010-11-16)

  • added support for disabled radio- and checkboxes

  • updated jquery.ui to 1.8.6

  • tuned edit-bar styling

0.23 (2010-10-21)

  • removed little extra margin for global tabs

  • made ui css work for @import stylesheets

0.22 (2010-10-13)

  • made portlet’s font size smaller

  • made edit of existing themes work after reinstall or uninstall-install

  • made edit of existing themes work for themes added via filesystem

0.21 (2010-10-13)

  • removed console.log call

0.20 (2010-10-10)

  • customization of existing themes (just give it the same name when downloading)

  • added new option to enable global font styling

  • added checkbox styling

  • added radiobox styling

  • cleaned up overall forms styling

  • added forms styling to dialog content

  • fixed dialog styling

  • cleaned up navigation-portlet styling

  • merged enableButtons into enableForms

  • tuned livesearch result styling

  • updated jquery-ui to 1.8.5 (reinstall via quick-installer required)

  • made uninstall remove the controlpanel icon

  • updated translations

  • tested with plone 4.0.1

0.14 (2010-09-19)

  • removed annoying flickering of personal-tools when hovering


  • updated jquery-ui to 1.8.4


  • fixed css rules suitable for plone 4.0b4


  • fixed css rules suitable for plone 4.0b3

  • added #edit-bar styling

  • added simple livesearch styling


  • First working version

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution (119.8 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page