Post on 16-Apr-2017
Getting All Your Web Apps
To Wear The Company Brand
Tim Knapp
Introductions
Plone developer since 2003
Vice-President of the NZPUG
Member of the Plone Foundation
The Problem
The Problem
Multiple web apps with different theming technologies
Wanting to use best-of-breed web apps
Migrations
Upgrades
There's 1 company theme but many different web applications with different theming approaches, for e.g. mailing list software, issue tracking software, CMS, blogging s/w, etc.
The company may wish to use for e.g. WordPress to manage their blog rather than whatever comes native with their CMS.
Management may decide for e.g. to move to a new CMS platform.
Upgrades do tend to also mean rewriting applications to work on the new version and this can be a long drawn out process. And usually by the time you've completed it the new version of the software has been released.
The Solution
Deliverance
1
2
1
2
How Difficult Was This?
Why Use Deliverance?
Web designers don't need to learn a new theming technology
Can use an existing theme
Works with any web framework
Performance and flexibility
Uses standard HTML and CSS.
No need to integrate the theme into the web application technology. Can use it as is.
-
Can either be run as a separate proxy server, as WSGI middleware or using an XSLT inline transformation hence allowing for better performance and flexibility.
Sites UsingDeliverance
plone.org - Before
plone.org - Deliveranced
repoze.org - Deliveranced
blog.repoze.org
bugs.repoze.org
lists.repoze.org
afpy.org - Before
afpy.org - Deliveranced
Also using PyQuery.
How Does It Work?
Move elements from your content
Into placeholders in your theme
Without touching either of them
The Nuts and Bolts
An XML rules file defines the actions you wish to perform on the content and theme
4 available actions
Select the items you wish to operate on via CSS selectors or XPath expressions
4 Deliverance Actions
replace
append/prepend
drop
replace
replaces something in the theme with something in the content
append and prepend
append puts things from the content after things in the theme, and prepend puts things from the content before things in the theme
drop
remove problematic elements from a theme or content
More Advanced Usage (PyQuery, etc)
Deployment Options
Proxy
WSGI middleware using repoze
collective.xdv
Q & A
Contact Details
e : tim@emergetec.com
w : www.emergetec.com
Presentation URLs
http://tinyurl.com/deliverance-preso
http://tinyurl.com/deliverance-preso-code
More info
http://www.slideshare.net/Jazkarta/deliverance-plone-theming-without-the-learning-curve-from-plone-symposium-east-2009
http://plone.org/theming
http://www.sixfeetup.com/blog/2009/4/27/deploying-plone-and-zine-together-with-deliverance-using-repoze
http://www.martinaspeli.net/articles/rolling-out-repoze
http://macadames.wordpress.com/2009/05/23/some-deliverance-tips
Image Credits
http://www.flickr.com/photos/aturkus/2557151889
http://www.flickr.com/photos/vox_efx/3051772438
Click to edit the title text format
Click to edit the outline text format
Second Outline Level
Third Outline Level
Fourth Outline Level
Fifth Outline Level
Sixth Outline Level
Seventh Outline Level
Eighth Outline Level
Ninth Outline Level