collective.skinny

Warning
This product has not had a release in over 1 year and may no longer be maintained.
by Daniel Nouri last modified Feb 16, 2011 02:04 AM

Plone theming for mortals: A simple example to get you started quickly with your own public skin

Project Description

collective.skinny

What is Skinny?

It's a package to help you get started quickly with developing a seperate, public-facing skin for your Plone site. It's been described as being vastly easier than skinning Plone the conventional way. But it also has a few drawbacks; one being that you can't use it for community sites where people other than your site editors log in and modify content.

If you're struggling with skinning your Plone site, do try it out and give feedback. The package comes with an example skin that shows you how it works.

Skinny has been discussed here:

Usage

Look at the package's configure.zcml file for instructions on how to activate the public skin to actually see it.

This package is both an example and a library. The easiest way to start using it is to just copy the package and modify.

The better way is to use it as a library and extend it with your own package. When doing so, you'll probably want to start out by subclassing and overriding through ZCML the main view, which lives in main.Main. Look at the configure.zcml file for pointers.

To get started, look at the templates/ directory. The main.pt template is where everything is wired together. You can render other templates in the same directory by saying view/render_spam, which will render the spam.pt template.

Writing views for content objects works similarly. Look at templates/content/document.pt to see how this can work. This template is found and used because it corresponds to the portal_type of the content object you're displaying. Thus, you can make your own view for Smart Folders by putting a topic.pt template into the same directory, to give an example. If no content view is found, we'll try and display Plone's default view for you.

All of Plone's views such as @@plone_context_state and friends are available as usual in templates. In addition, there's a handy shortcut for looking up tools: Using view/portal_spam will return the portal_spam tool from your Plone site. (Try view/portal_url for a working example ;-).

Screenshot

The example in this package looks something like this:

http://danielnouri.org/media/acme-website.png

Feedback

We'd like to make this package work as easy as possible for you. Let us know if you have any comments or questions by using the Plone User Interface & Design or the Plone Add-on Product developers list.

Thanks

The following people helped with support, code, patches, etc:

  • Martin Aspeli
  • Pelle Krogholt
  • Shane Graber
  • Sylvain Viollon

Changelog

0.5 - 2009-04-20

  • Allow any non-HTML resources from Plone to be served. The previous "no leak" fix turned out to be a bit too strict, e.g. it wouldn't allow images from content to be served in the public skin.
  • Patch site_properties to return the empty list for typesUseViewActionInListings so that images and files don't get a /view at the end when looking at the public skin, and thus can be skinned with Skinny. To make you own view for images, add a templates/content/image.pt.

0.4 - 2009-04-16

  • Don't leak Plone views like folder_listing anymore in the public skin.

0.3 - 2009-01-26

  • No longer require python: statements for rendering parts; use view/render_$part.
  • Make portal tools available through view/portal_url and the like.
  • Add a render_viewlet convenience function to base.py that allows the reuse of Plone's viewlets in the public skin. Look at main.MyNavigation for a usage example.

0.2 - 2009-01-22

  • Instead of displaying the login form when an Unauthorized error is raised, display a 404 page in the public skin. This will make pages like /edit invisible.

0.1 - 2009-01-22

  • Initial release

Current Release
collective.skinny 0.5

Released Apr 20, 2009

Download file Get collective.skinny for all platforms
collective.skinny-0.5.tar.gz
If you are using Plone 3.2 or higher, you probably want to install this product with buildout. See our tutorial on installing add-on products with buildout for more information.

All Releases

Version Released Description Compatibility Status
0.5 Apr 20, 2009 More about this release… final
0.4 Apr 17, 2009 More about this release… final
0.3 Mar 13, 2009 Roll your own Plone theme in a matter of hours with this hot new approach! More about this release…
Plone 3
final

Comments (0)