An easy slideshow solution for Plone
Project description
Introduction
EasySlideshow is a Plone product that makes it easy for any content editor to create and manage online slideshows. It comes with all the settings you need to customize your slideshows, such as:
Adjusting the delay between slide transitions;
Managing the height/width of slideshow images;
Controlling whether or not captions are shown with slides;
Selecting whether or not users can pause the slideshow on hover;
Selecting slides timeout;
Turning the display of slide number on/off.
In order to create a slideshow, content editors just upload pictures to a regular folder, click the folder’s Subtype menu, and select slideshow. This transforms the regular folder into a slideshow folder, and automatically changes the folder display to a slideshow view. To modify the order in which the slideshow displays the images, content editors just need to reorder the pictures in the folder by dragging them up or down in the Contents tab.
Besides living in a dedicated folder, EasySlideshow also supports the ability to display images in a portlet (a.k.a. side box). Slideshows can actually be displayed in any template by calling the slideshow macro that ships with EasySlideshow.
While EasySlideshow’s global parameters are controlled via the Control Panel (log in, click Site Setup, and select EasySlideshow Configuration), content editors also have the ability to override the global settings for a specific slideshow directly at the folder level. This allows the use of EasySlideShow in multiple locations on your site without having to make the appearance and function of all slideshows the same.
EasySlideshow is Plone 4 compatible (Plone 3.3.x and up) and requires no custom installation, as it leverages the jQuery library that already ships with Plone. EasySlideshow uses fields already found in the Plone image type for presentation. The jQuery plugin that is the basis for this product is jQuery Cycle.
Installation
In your buildout.cfg, add collective.easyslideshow to the list of eggs within the [instance] section. The package is using z3c.autoinclude so there is no need to add it to zcml if you are using Plone 3.2+:
[instance] eggs = collective.easyslideshow zcml = collective.easyslideshow
Run buildout, and start up the instance
Install collective.easyslideshow via portal_quickinstaller
Use
Create a folder in your site
Once EasySlideshow has been installed, you will be able to subtype the folder so it becomes a slideshow folder, by clicking on Sub-types tab then selecting slideshow
Add images into the folder
The caption on top of the image in the slideshow displays each image’s Title and Description
To link a slide to a page in your site, edit the image, click on the Categorization tab, and set a related link. Each slide can have its own related link.
For best performance, all images used in the slideshow should be the same size, and be uploaded at that size. Slideshow size can be changed in Site Setup.
Properties can be changed either site wide or on each slideshow individually. Go to site setup to set the site wide properties. For changing the properties of individual slideshow, there is a slideshow tab available on each slideshow folder.
A slideshow portlet is also available. Each portlet has its own settings, and displays the images from a folder that you choose.
Customization
Slideshow appearance can be further modified by overriding slideshow_macros.pt
The slideshow macro can be put into a custom template with the following code:
<metal:block use-macro="here/slideshow_macros/macros/slideshow"> slideshow here... </metal:block>
When used on a custom template, the slideshow will look for images in a folder called Slideshow Folder (id slideshow-folder) at the same level as the page on which it will be displayed. The name of this folder can be modified within the macro.
See http://malsup.com/jquery/cycle/ for further functions and customizations that can be used.
Examples
Sites that use EasySlideshow include:
Changelog
1.0 (2011-01-07)
Fix up docs in preparation for 1.0 release. [claytron]
Allowed for individual folders to have their own slideshow properties [tbesluau]
Made CSS that removes content type images specific to just #slideshow [cwainwright]
Added browser tests for the configlet [tbesluau]
Added test for the SlideshowView getImages method and stub for getPortletImages. [davidblewett]
Updated the change log format. [clayton]
added version.txt in the collective/easyslideshow folder and modified setup.py to grab it automatically [tbesluau]
fixed the portlet so it grabs the slideshow folder correctly [lucielejard]
created an image for the easyslideshow configuration in site setup [cwainwright]
moved propertiestool.xml into the initial profile [cwainwright]
made the uninstall stop running on reinstall [tbesluau]
updated the versioning style in metadata.xml [cwainwright]
added cssregistry, jsregistry, portlets, and skins to the uninstall profile to ensure everything gets removed [cwainwright]
cleaned up the README so it is valid reStructuredText [cwainwright]
added installation instructions to the README [cwainwright]
using z3c.autoinclude [tbesluau]
wrote up some documentation on how to use the slideshow [cwainwright]
removed insert-after=custom code. This generally causes a problem when easyslideshow is installed after the theme – the slideshow_macros override stops working. [cwainwright]
Slideshow portlet. It is almost done, but I have not yet been successful in getting the selected folder to display its images in the slideshow. [cwainwright]
0.5 (2010-02-22)
put in a condition on install - do not add the slideshow folder view to the display dropdown if it is already there [cwainwright]
fixed the title property for the slideshow propertiestool.xml [cwainwright]
0.4 (2009-12-11)
including docs from the egg to avoid errors on install [cwainwright]
0.2 (2009-10-23)
changed up the way the slideshow_folder_view is made available, so that it gets run with the default profile instead of just an install. [cwainwright]
0.1 (2009-10-15)
when easyslideshow is installed, slideshow_folder_view is made available from the display menu on a folder - on uninstall, slideshow_folder_view is removed from the display menu, and any folders using that view are reset to folder_listing [cwainwright]
created an uninstall profile to remove the EasySlideshow Configuration from the control panel [cwainwright]
added disclaimer about all images being the same size - fixed spacing on caption [cwainwright]
changed the way the caption is positioned, so that it is always at the bottom of the slideshow container, no matter the image size - made the variable descriptions more descriptive [cwainwright]
moved height and width variables to the template from CSS due to caching issues. [cwainwright]
added a control panel for the slideshow via Site Setup for easy customization functionality [cwainwright]
cleaned up slideshow_macro code - set the slideshow to be hidden until everything is loaded (to avoid all slides being seen before the slideshow has loaded) [cwainwright]
moved the stylesheet and JS to the skins directory so that the stylesheet can use dtml. Also added dtml variables to the stylesheet so the slideshow will use colors set in base_properties. [cwainwright]
fixed links to portal_url [cwainwright]
make sure the index exists before searching/re-indexing [claytron]
fixed interface path [claytron]
don’t set options in skins.xml that aren’t changed - register skins recursively [claytron]
initial import of a jquery based slideshow product [claytron]
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
Hashes for collective.easyslideshow-1.0.zip
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6fb390d9772b6d5f652a5a65405d08f89a28dbc29763cc529695a3d1d320e615 |
|
MD5 | 99e321d2f7bc8cdb59f05125f04c5888 |
|
BLAKE2b-256 | 64f549720f353217707e622efe304a248bf57d9e50dc42a56695076e35cd9482 |