I have released last week the smallest website I have done.
This is the first time I don't have to develop anything and with only two days of work (deploy, theming, configure and manage the customer), with CSS and ten lines of Javascripts and voila: http://www.salon-natura.com. I proud of this project that is an event, so I will share how I have achieved this one.
Addons used
- collective.addthis (all pages)
- collective.quickupload (logged in only)
- collective.galleria (photos page)
- collective.googleanalytics
- collective.masonry (home page)
- collective.js.datatable (exposants page)
- collective.portlet.embed (facebook like box + google maps)
- collective.seo
- Products.PloneFormGen (contact form + registration form managed by the customer)
- plone.app.theming
Customer feedback
The customer is really happy. In France Plone is not really known and it is not that easy to show how easier is Plone to manage the content than some other CMS;
The SEO was just great, two days later the website was first on google request (Salon Natura). I have used microformat markup to support richsnippet result.
The home page is built using masonry addon for Plone + a bit of javascripts to make them equal height:
function equalHeight(group) { var tallest = 0; group.each(function() { var thisHeight = $(this).height(); if(thisHeight > tallest) { tallest = thisHeight; } }); group.height(tallest); } function initializengesalonnatura2012(){ equalHeight($("#portletsAboveContent .portletWrapper")); $('#portletsBelowContent .portletWrapper .portlet-static-nos-partenaires').parent().width(675); $('#portletsBelowContent .portletWrapper .portlet-static-lierre').parent().width(675).css('border','none'); }
Using quickupload + galleria was just so easy for the customer to create the photos album !
The case of the exposants page is quite nice: It is a table written by the wysiwyg editor (208 lines) and displayed using jquery datatables. So the customer can add, remove and update this page that is just displayed nicely (except for translation). A bit of JS to append a class on row that depends on the value of the first column.
$('.section-exposants #content-core table tr').each(function(index, value){ var category = $(value).children('td:first').text().toLowerCase(); if (category == "bien-être & vie saine"){ category = "bienetre"; } if (category == "cosmétique"){ category = "cosmetique"; } $(value).addClass(category); }) $('.section-exposants #content-core table').dataTable({"bPaginate": false});
PloneFormGen always let the customer impressed by the power to create form ! This is one of the so many secret weapon of Plone !
Conclusion
Plone let customer happy and that made me happy !