WordPress SmoothGallery Plugin

This WordPress plugin helps you to embed JonDesign’s SmoothGallery in your blog.

Basically it’s this simple:

  • upload some pictures to a post or page
  • use the shortcode smoothgallery
  • set some options
  • watch your smooth gallery

You can download the plugin here.

Example

Have a look at this example. Kudos to my brother and his friends for taking these awesome pictures; thanks that I may show them here. They show different scenes from the Bergpark in Kassel, Germany.

Bergpark - Bridge

Another stunning picture.

Bergpark - Bridge

Bergpark - Aqueduct

Wow! That's awesome.

Bergpark - Aqueduct

I’m collecting real world examples where this plugin was used: if you’re interested have a look at the showcase page.

How to

Once you’ve activated the plugin you can start adding galleries to your posts and pages. I’ve split up this How to section into the following use cases.

Getting started

Adding a smooth gallery to a post or a page is easy! Try this:

  • go to the edit screen for a post or a page
  • right below the input field for the title click on Add an Image
  • upload some images and enter a sensible title and description
  • reorder the images however you want them
  • insert [smoothgallery] somewhere in the content
  • add a custom field named smoothgallery with its value set to On
  • hit save and click on View this Post/Page to see the result

If you’d like to customize the gallery check out the available options.

Activating the development version

If you’d like to use the latest version of SmoothGallery just activate it in the file config.php:

  1. add a # at the beginning of line 43 and 44
  2. remove the # from line 45 and 46

The plugin now uses the new version; currently SmoothGallery 2.1beta1 with Mootools 1.2.

iFrame it

Embedding the SmoothGallery inside an iFrame has several advantages:

  1. the JavaScript for SmoothGallery doesn’t interfere with incompatible frameworks like jQuery, PrototypeJS that you’re probably using on your site
  2. you can have more than one gallery on a single page

Just add iframe=1 as an attribute to the shortcode. If you’ve previously used the normal SmoothGallery and put all the options inside the custom field you’ll have to transfer these to the shortcode now. Say, you’ve got h:250 and i:false in your custom field then you would put this into the shortcode [smoothgallery iframe=1 height=250 showInfopane=false].

Note that you don’t need the custom field anymore; just remove it. Furthermore you can’t use the shortcuts, e.g. h for height, use the long version instead, i.e. height instead of just h. Finally you can’t even use : instead of = in the shortcode either.

More than one gallery

All you have to do is adding the shortcode [smoothgallery] several times to your content, with the iFrame option enabled. Have a look at the options on how to customize the appearance of the galleries.

If you don’t want to use iFrames for some reason have a look at this alternative solution.

A gallery in your sidebar or theme

I’ve created a separate page for this issue.

Some people want to do this because they’d like to have the images of the most recent posts inside a gallery; sometimes displayed in the header part of their theme. Read about this here.

Images from Flickr or Picasa

Your images are hosted on Flickr or Picasa and you want to show them inside a SmoothGallery on your blog? No problem, follow these two steps.

  1. Open the file config.php that comes with the plugin in an editor, search for ENABLE_FLICKR and ENABLE_PICASARSS and change the value from false to true for one of them or both. If you’d like to use Flickr make sure to supply your API key (FLICKR_APIKEY) and secret (FLICKR_SECRET) as well.
  2. Use the following attributes along with the shortcode:
    • flickrusername: supply your Flickr username and the most recent photos from your photo stream will be included in the gallery.
    • flickrphotoset: use this if you want to show images from a particular set of photos.
    • picasaurl: navigate to an album on Picasa, grab its RSS feed and supply it with this attribute in the shortcode.

Have a look at the examples to learn more about their usage.

In case you want to resize images on the fly there’s a parameter called imgmax that you can use. This parameter special to Picasa will resize the image to fit in the frame of SmootGallery. Here’s an example:

[smoothgallery iframe=0 width=640 height=480 embedLinks=false
 timed=true delay=6000 bordercolor=fff imgsize=640x480
 picasaurl=https://picasaweb.google.com/[...]/4711?imgmax=640]

Notice the imgmax parameter at the end of the picasaurl.

Using ReMooz to open the images

If you’ve linked to larger images in your SmoothGallery but don’t want them to open in a new window ReMooz comes to the rescue. Make sure to activate the development version first and keep in mind that this won’t really work if you’ve put SmoothGallery inside an iFrame.

Either add r:true to the custom field or add useReMooz=true as an attribute to the shortcode.

Generated thumbnails

If you’d like to use the carousel feature of SmoothGallery you’ll have to either generate thumbnails yourself or use the plugin to do this for you: just set ENABLE_GENERATED_THUMBNAILS in the file config.php to true. Furthermore make sure that the directory cache under smoothgallery/extra is read/writable by the webserver.

By default, the shortcode generates markup that contains a link for each image to its large version. This is great if you’d like to have a pure image gallery. If you’d like to setup a gallery, say, for your featured posts with a teaser image and a link to the corresponding post, you can do this like so:

  • go to Media Library
  • edit an image
  • supply a SmoothGallery link

and save. Once you’ve done that the image in the gallery uses the given URL.

For control freaks

If you’d like to have more control over the exact markup that gets inserted inside your page, maybe you don’t want to use the shortcode but insert everything yourself. I’ve prepared two starting points for you:

  1. under Advanced Options on the edit screen scroll down to SmoothGallery and use the generated HTML markup
  2. generate the markup with this tool

No matter what you’ll use, you’ll end up with some markup that you can start customizing. Check out all the available options for full flexibility.

You also might want to check out the tool box which has got useful wizards to ease the creation of compatible markup.

Options

If you aren’t using iFrames and you don’t annotate your post or page with smoothgallery the CSS and JavaScript will not be loaded and the gallery won’t work. So, add a custom field with the key set to smoothgallery if you’d like to enable the SmoothGallery for a particular post or page. If the value is set to 1 or On the default values for the gallery will be used.

If you want to change the defaults you can use the following options. I’ve split up this section into options that come with SmoothGallery and the ones that I’ve added. It’s meant as a reference for you – so, if you’d like to change something you can look up the options here.

SmoothGallery options

Here are the most common options for SmoothGallery. If you need more: have a look at the top of the file utils.php that comes with this plugin.

Option Short version Default value
showArrows a, arrows true
showCarousel c, carousel false
showInfopane i, info, infoPane true
embedLinks l, links true
timed t false
delay d 9000

I added some more options that aren’t part of SmoothGallery. They help you to customize the dimensions and other CSS related parameters.

Option Short version Default value
height h 345
width w 460
bordercolor b, border 000

Example for the custom field

With the following code you would end up with a timed gallery that is set to 350×400 pixels and has got a white border. This goes into the custom field named smoothgallery:

w=350
h=400
timed=true
b:fff

As you can see, you can use : instead of = too. Mixing the long and short version of the attribute names is okay.

Shortcode

The shortcode [smoothgallery] has got some more attributes. If you’re using the attribute iframe along with the shortcode you can use all the above plus the following attributes. Currently the shortcuts that may go into the custom field, e.g. h for height, aren’t supported here – use the long version instead, i.e. height instead of just h.
Please don’t confuse the following with the options that you can use along with the custom field – the following attributes are solely for the shortcode.

id
By default the shortcode uses the images attached to the current post or page. If you’d like to use the images attached to another post or page you don’t have to upload them again but just specify the id of the specific post/page with this attribute.
iframe
Add this parameter if you’d like to take advantage of a gallery inside an iFrame.
iframebgcolor
Adapt the background color of the iFrame. Just supply the color code without the preceding #.
imgsize
If you upload images with WordPress thumbnails will be created for you. We can try picking up these images instead of the original version with this parameter. Say, you’ve set the Thumbnail size for your images under Settings – Media to 150×150 pixels. If you add the parameter imgsize=150x150 to the shortcode the gallery will display the thumbnails instead of the originals.
flickrusername, flickrphotoset
Either just supply your Flickr username and the most recent photos from your photo stream will be included in the gallery or add the attribute flickrphotoset to show images from a particular set. Hint: when you click on a set in Flickr, in the URL it says /sets/numbers#: that number is the one you should use with flickrphotoset.
picasaurl
Navigate to an album on Picasa, grab its RSS feed, supply it with this attribute in the shortcode and the gallery will use your images from Picasa.
dir
You just want to show some images that are in a directory on your webserver? Open the file config.php, add your directory to the array inside the function getImageDirectory and add the attribute dir to the shortcode pointing to the path in the array, i.e. dir=0 for the first path, dir=1 for the second one and so on.

Examples for the shortcode

On this very page I’m using the following simple shortcode to generate the markup for the SmoothGallery:

[smoothgallery imgsize=400x266]

This will grab the images that I uploaded to this page for the gallery. The attribute imgsize says, that I don’t want to use the images with their original size, but the thumbnails that were generated by WordPress during the upload process.
Alongside this shortcode I put this into the custom field named smoothgallery:

w:400
h:266
l:false
t:true
d:6000

This makes sure that the width and height are set accordingly; that there’re no links to the large versions of the images; that it’s a timed gallery with six seconds between the transitions.

As you can see some options go into the custom field and others go into the shortcode. In case you’re adding the iframe attribute to the shortcode you have to supply all the options that originally went into the custom field in the shortcode; this is due to technical reasons and the way iFrames work.

If I wanted to use an iFrame instead, the above example would become (line break just for readability):

[smoothgallery iframe=1 width=400 height=266 embedLinks=false
               timed=true delay=6000 imgsize=400x266]

Note that you don’t need the custom field anymore; just remove it. Furthermore you can’t use the shortcuts, e.g. h for height, use the long version instead, i.e. height instead of just h. Finally you can’t even use : instead of = in the shortcode either.

The images for the gallery can be imported from virtually anywhere: Flickr, Picasa or a simple folder on your webserver just to name a few. If I wanted to show the images of my photo stream on Flickr I would use this shortcode:

[smoothgallery flickrusername=27834774@N05]

Just showing the photos of a particular set can be done using the flickrphotoset attribute. The same works with albums from Picasa: browse the albums there, copy the corresponding RSS feed and add it to the shortcode with picasaurl.

Confused ?

Are you confused because of all these options, attributes, parameters, shortcuts and shortcodes? Instead of getting angry at all this stuff please just stay relaxed, read the FAQ or add a comment with your problem to this page and I’ll try to come up with a sensible response. If that doesn’t help and you’re still puzzled I may help you out.

Message from Certkiller We offer 642-436 training with braindumps that include custom design templates and other WP themes to help you pass 640-816 exams.

640 comments ↓

  • Hi Filinta,
    the CSS seems to be broken.

    Please send me a link to the page with the gallery and I’ll have a look…

  • Safir says:
    Hi,

    I need your help. I used the iNove theme, but your plugin cannot work… How can i fix that and your plugin can run in this plugin. Sorry for my English :-)

  • Safir says:
    Dear Sir, i solved the problem… I upgrade the theme to new version.. Thanks for your attention..
  • Matt says:
    Hi Christian, Love your plugin, but iframes seem to be forcing the slideshow to show at 150×150.

    See: http://wedoonline.org/category/learn/view

    Can I have a normal sized gallery (as the non-iframe gallery below) while using iframes? It’s very important that I show more than 1 gallery on a page!

    Thank you for all your hard work.

    Running WP 2.7

  • Hi Matt,
    I’m sorry that the description isn’t very clear about this but you can specify the width and height of every gallery in the shortcode like so:

    [smoothgallery iframe=1 height=100 width=200]

    This way you can have a lot of different galleries on one page. Try using imgsize too and you can use the thumbnails that WordPress generated for you.
    BTW: the options in the custom field don’t affect the shortcode if you’re adding iframe=1 to it; they’re only used by the gallery that’s on the current page, i.e. not inside an iFrame.

  • Matt says:
    Thanks for your quick response, Christian. Perhaps you should update your documentation? I found that using both imgsize and height and width inside the shortcode did the trick.
  • Matt says:
    Hi Christian. One more question for you: using iframe, is there any way to modify the order of the slideshow? The code provided at the bottom won’t use iframes, correct? I have tried changing the order of the gallery via the wordpress image uploader interface, but it seems that smoothgallery identifies the original order of the uploaded gallery and does not respond to order changes in the wp image uploader. Any thoughts?

    Thanks as ever, Matt

  • Hello Matt,
    reordering the images isn’t implemented yet. Although I’ve got this on my TODO list I haven’t found the time to add this to the plugin.
  • Matt says:
    I see. How is the original order determined by smoothgallery? can i control the order of files uploaded to make sure I have the order I want the first time around? Or is it totally random?
  • Hi Matt,
    in case you aren’t using the attribute imgsize the images should be ordered just like you uploaded them. If you are using the attribute the images are collected from your upload folder and should be ordered alphabetically. I said “should” because I haven’t tested this thoroughly.
  • manS says:
    Hi… Thanks for great plugin.. I want need some help..

    Is it possible to modify this code to show recent post images fetch from the recent article…?

    It could be useful to mysite…

    want to add some info… fetch the image from custom field..

    TQ..

  • Hi manS,
    have you tried this?
  • Susan says:
    I am interested in using this plugin. I saw on the site for SmoothGallery that a Flickr option exists. Does a Flickr option exist for this pluging version too?

    OK, I’m really confused. I’ve installed the plugin. If I don’t upload any new images, it seems to display 2 images already in a gallery. If I upload images and insert into the current post, they are just there, not in a slide show. Also, in the 2 that are displaying, one is way too large and in both the text sizes are wonky. Please help me!

    http://www.terrificscienceoutreach.com/

  • Hi Susan,

    Does a Flickr option exist for this pluging version too?

    It’s on my TODO list and I’m looking forward to add it in the next version of the plugin.

    Please tell me the exact location of the page where you’ve tried to publish the SmoothGallery, so I can have a detailed look.

  • FloiT says:
    I can’t manage to make infoPane work out… here is the page where i have the plugin working.

    I’ve added the description but nothing appears…

  • Hi FloiT,
    have a look at line 16 and 140: Mootools is included twice in your page. I’ve just tried removing line 16 completely and after that the gallery works.
  • Hi Christian,
    I am wondering about the possibility of plugging your plugin into a standard html page. Would it be better to use JonDesign’s SmoothGallery directly? I like your instructions so much better! Thanks! David
  • Susan Gertz says:
    Hi Christian.

    I have the plugin working now but it doesn’t look so nice. How can I make the photos fit the box (maybe with white space around if needed) rather than being cropped so that people’s heads are cut off, etc? How can I control the style of the text for the title and description of photos? How can I control the style of transitions?

    thanks!!

  • Hi Susan and David,
    @David: although I think it would be better to just use SmoothGallery directly I thought of another possibility: create that page with WordPress and once you’re done save it with your browser on your local computer. I’ve just tried this with Firefox, selected FileSave page as and marked Web page, complete. All the necessary files – your CSS, SmoothGallery JS and CSS – are saved in a separate folder and the HTML page can be used without a connection to the Internet.

    @Susan:

    How can I make the photos fit the box

    If you upload images, WordPress will create various thumbnails for you; you can adjust those under SettingsMedia. Use these smaller images with this option.

    How can I control the style of the text for the title and description of photos?

    Add this .jdGallery .slideInfoZone h2 for the title and this .jdGallery .slideInfoZone p for the description to your CSS and adapt their style to whatever you want. Although I recommend adding changes to your theme’s own CSS you can change the CSS from the plugin directly under wp-content/plugins/smoothgallery/css.

    How can I control the style of transitions?

    I’ve just released a new version (1.13) of the plugin that supports this feature. Just use the key transition inside the custom field smoothgallery along with one of the available transitions, i.e. fadeslideleft, continuoushorizontal, continuousvertical. For example:

    transition:"continuousvertical"

    Don’t forget the double quotes.

  • Thanks Christian,
    I set up the following page: http://nbeginnings.org/welcome-page/
    but it seems to not be loading.
    Did I miss something?
    I am using custom field;
    smoothgallery:

    on
    w=525
    h=332

    Thank you!

  • Hi David,
    I couldn’t load this specific page due to HTTP error code 403, but on the frontpage I saw that you’re using Prototype.js. Keep in mind that this framework is incompatible with SmoothGallery. So either put the SmoothGallery inside an iFrame or remove the conflicting frameworks.
  • That is strange! Here’s what I’m seeing: http://nbeginnings.org/images/frozen.jpg

    I added this to my Custom Field:
    iframe=1
    w=525
    h=332
    any other ideas?
    Thanks again!

  • all right, I receioved your email about adding “[smoothgallery iframe=1]” as an attribute, and put this under the custom field:

    “[smoothgallery iframe=1]”
    w=525
    h=332

    and it is working now! Perhaps this needs to be something better explained in the iframe paragrapgh, as it is a little tricky.

    Thanks again for an awesome plugin!

  • Hi David,
    if you put this [smoothgallery iframe=1] inside the custom field, I guess you got it wrong. But if it works for you now that’s great no matter how you did it.
  • Hey Christian,
    Well, it is working; but where should have it gone?

    also, I used firebug to try and style the carousel a little; but can’t find the following:

    .jdGallery .slideInfoZone p {smoothga…color=000 (line 73)
    color:#EEEEEE;
    font-size:80%;
    margin:-5px 5px;
    padding:0;

    any ideas? Thanks!

    opps, I just found the above 2nd answer…
    on the jd.gallery.css
    :)

  • Jim Wurster says:
    I just found your plugin after I spent some time building my own. Yours works on one site in which I was testing but not on another. I’m sure it’s a conflict with another plugin’s javascript, but I don’t see it. Maybe you can see what the problem is.
    Thank you.
  • Hi Jim,
    you’ve got jQuery in your HTML header and that doesn’t work with SmoothGallery. So either put the SmoothGallery inside an iFrame or remove the conflicting frameworks, i.e. jQuery, Prototype.js.
  • I was a having a styling issue with my theme (Mistylook by Sadish) with regards to the infopane. It was reading the main styleheet rather than the jd.gallery.css stylesheet.

    A person on wordpress.com forum suggested trying this:

    in your CSS for the gallery where you have this:
    .jdGallery .slideInfoZone h2
    put this:
    #content .jdGallery .slideInfoZone h2

    It worked! It is reading the desired stylesheet now!

  • Andy S says:
    Love the plugin. Do you have a rough ETA on the random / randomize feature? I may take a crack at it if you don’t expect it to be too soon. Thanks!
  • Hi Christian, I am working on my main site tonight, which uses a magazine style theme, Branfordmagazine theme. I have set up a post with an image gallery to display on the front page, all is well; yet the links aren’t working.
    I have placed these controls in the custom field:

    “[smoothgallery iframe=1]”
    w=585
    h=392
    t=true
    b:fff
    d=6000
    fadeDuration=550
    a=false
    i=false
    l=true

    What’s the best manner of embedding links? I plan on updating, and changing around this post to keep my front page fresh. Thanks!

    Ps… I am interested in the random thing as well!

  • Hi David,

    What’s the best manner of embedding links?

    If you don’t want links to the large versions of the images you’ll have to manage them manually in the HTML code.

    I am interested in the random thing as well!

    I wrote Andy an e-mail and we’ll figure out the details.

  • Hi Christian… I am have having difficulties understanding the best way to implement your suggestion above.

    Can you show me what the working model would be for making a link to: http://www.greenpeas.us/weddings/ ?

    I have tried doing this several ways, and it keeps causing the gallery to not work at all, or keep the link to the image.

    I just need to know what content is required.

    Thanks! David

Leave a Comment

Hint: consider reading the FAQ before submitting a question.