Gallery Plus

You may notice on some of our posts a gallery of images. We are using the built in WordPress up-loader, and when there are a few images we use the gallery insert button. But we are fans of jQuery and are using Thickbox.

As you know the basic gallery insert with attach the gallery images and link them to an image attachment page. Instead we installed the Gallery Plus plugin by Justin Hawkwood.

This plugin alone will add the ability under the Settings — options to add a “title” attribute in the <a> link and a rel attribute of “lightbox”.

Now I do have some site’s with lightbox installed, and I am a fan of the script, but I didn’t want to use the Scriptaculous script. And I do know that there is a Lightbox script based on jQuery.

Anyway… since I am using the Thickbox script on this site, the plugin needed a little tweaking:

There are two files contained in the download: gallery-plus.php & options.php, both with need to be edited. Lets start with the options.php:

Find.

update_option('gallery_plus_overlay', $_POST['gallery_plus_overlay']);

Add the 2nd line below, like this.

update_option('gallery_plus_overlay', $_POST['gallery_plus_overlay']);
update_option(’gallery_plus_overlay2′, $_POST['gallery_plus_overlay2']);

Next Find.

$gallery_plus_overlay = stripslashes(get_option('gallery_plus_overlay'));

Add the 2nd line below, like this.

$gallery_plus_overlay = stripslashes(get_option('gallery_plus_overlay'));
$gallery_plus_overlay2 = stripslashes(get_option('gallery_plus_overlay2'));

This is where it gets tricky. Find these next lines.

<tr valign="baseline">
<th scope="row"><?php _e('"rel" value in &lt;a&gt; tag:') ?></th>
<td><select name="gallery_plus_overlay">
<option value="none"<?php if ($gallery_plus_overlay == 'none') echo ' selected="selected"'; ?>>none</option>
<option value="lightbox"<?php if ($gallery_plus_overlay == 'lightbox') echo ' selected="selected"'; ?>>lightbox</option>
</select> Specify which, if any, javscript image overlay package to use. THIS PLUGIN DOES NOT INSTALL ANY OVERLAY PACKAGES.<br /><em>Note: Only applies when <strong>Link type</strong> is set to "image".</em>
</td></tr>

And Add these lines above.

<tr valign="baseline">
<th scope="row"><?php _e('Insert "class=..." Attribute In Link:') ?></th>
<td><select name="gallery_plus_overlay2">
<option value="none"<?php if ($gallery_plus_overlay2 == 'none') echo ' selected="selected"'; ?>>NONE</option>
<option value="thickbox"<?php if ($gallery_plus_overlay2 == 'thickbox') echo ' selected="selected"'; ?>>thickbox</option>
</select> <em>Note: Only applies when <strong>Link Images To Full Resolution</strong> is on.</em>
</td></tr>

It should look like this:

<tr valign="baseline">
<th scope="row"><?php _e('Insert "class=..." Attribute In Link:') ?></th>
<td><select name="gallery_plus_overlay2">
<option value="none"<?php if ($gallery_plus_overlay2 == 'none') echo ' selected="selected"'; ?>>NONE</option>
<option value="thickbox"<?php if ($gallery_plus_overlay2 == 'thickbox') echo ' selected="selected"'; ?>>thickbox</option>
</select> <em>Note: Only applies when <strong>Link Images To Full Resolution</strong> is on.</em>
</td></tr>


<tr valign="baseline">
<th scope="row"><?php _e('"rel" value in &lt;a&gt; tag:') ?></th>
<td><select name="gallery_plus_overlay">
<option value="none"<?php if ($gallery_plus_overlay == 'none') echo ' selected="selected"'; ?>>none</option>
<option value="lightbox"<?php if ($gallery_plus_overlay == 'lightbox') echo ' selected="selected"'; ?>>lightbox</option>
</select> Specify which, if any, javscript image overlay package to use. THIS PLUGIN DOES NOT INSTALL ANY OVERLAY PACKAGES.<br /><em>Note: Only applies when <strong>Link type</strong> is set to "image".</em>
</td></tr>

Now lets edit the gallery-plus.php file:

Find.

'overlay' => get_option('gallery_plus_overlay'),

Add the 2nd line below, like this.

'overlay' => get_option('gallery_plus_overlay'),
'overlay2' => get_option('gallery_plus_overlay2'),

Next Find.

<a href=\"$full_image_href[0]\”" . (($overlay != ‘none’) ? ‘ class=”‘ . $overlay . ‘”‘ : ”) . ($atagtitle ? ” title=\”".trim(htmlspecialchars($attachment->post_title, ENT_QUOTES )).”\”" : ”) . “><img src=\”$thumbnail_link[0]\” title=\”".trim(htmlspecialchars($attachment->post_title, ENT_QUOTES )).”\” alt=\”".trim(htmlspecialchars($attachment->post_excerpt, ENT_QUOTES)).”\” width=\”$thumbnail_link[1]\” height=\”$thumbnail_link[2]\” class=\”attachment-thumbnail\” /></a></{$icontag}>”;

And change the $overlay to $overlay2, like this.

<a href=\"$full_image_href[0]\”" . (($overlay2 != ‘none’) ? ‘ class=”‘ . $overlay2 . ‘”‘ : ”) . ($atagtitle ? ” title=\”".trim(htmlspecialchars($attachment->post_title, ENT_QUOTES )).”\”" : ”) . “><img src=\”$thumbnail_link[0]\” title=\”".trim(htmlspecialchars($attachment->post_title, ENT_QUOTES )).”\” alt=\”".trim(htmlspecialchars($attachment->post_excerpt, ENT_QUOTES)).”\” width=\”$thumbnail_link[1]\” height=\”$thumbnail_link[2]\” class=\”attachment-thumbnail\” /></a>
</{$icontag}>”;

note: I know that this is really just riding the plugin of the lightbox script and telling it to use the thickbox only script, but till it’s added in, this is the way I went about it.

Thanks

This post written by Austin

A web designer and avid WordPress guru. Visit my personal blog TheFrosty, and please follow @WPCult on twitter for site updates. You can also follow me personally @TheFrosty.

  • Share/Save/Bookmark

Leave a Reply

External Link Preferences

Feedburner & Twitter Stats

WPCult Sponsors

Tag Cloud

Top Commentators

  • No commentators.

Available Ad Spots

  • 21 text ad slots open
  • 24 banner ad slots open

WPCult Sponsors

  • WordPress Reads

    • Blog Blazers
    • Blogging Tips
    • Building a WP Blog
    • Pro Blogger
    • Twitter Revolution Book
    • WordPress for Dummies
    • WordPress for Dummies V2
    • WordPress Theme Design
  • Premium Themes

    • Agent Theme
    • Black Canvas
    • Blog Blazers
    • Blogging Tips
    • Building a WP Blog
    • Busy Bee
    • CelebrityPress
    • Chrome Theme
    • FREEmium Theme
    • K2 Theme
    • LaunchPad
    • PaperCut
    • Pro Blogger
    • Revolution 2
    • Thematic
    • Theme Hybrid
    • Twitter Revolution Book
    • WordPress for Dummies
    • WordPress for Dummies V2
    • WordPress Theme Design
    • WP Realtor
    • WP Vote
  • Free Themes

    • FREEmium Theme
    • K2 Theme
    • LaunchPad
    • Thematic
    • Theme Hybrid