WordPress Attachment Page Template Code Snippets

Date: 15th November 2009 at 4:25 am | Filed under: scripts, wordpress | Author: Sam Burdge | Tags: , , , , ,

I haven't written as many WordPress tutorials as usual lately, as I have been so busy building websites and blogs, so I thought I would take the time out to share a few WordPress codes I have developed recently for attachment page templates and specifically the image attachment page template. The attachment page template is the page that displays a single image when the images link URL is set to 'Post URL'. You can set the image's link URL when inserting a single image into a post, and also when using the gallery shortcode.

The codes in this article are mostly applicable to images inserted using the gallery shortcode as they are most useful for posts or pages that have multiple image attachments. Read more about using image and file attachments.

These template codes can be added to your WordPress theme using the attachment.php and image.php files. If these template files do not exist in your theme you can create them, or WordPress will default to using single.php or index.php to show attachments by default. (See more about template hierarchy).

If you don't want to create a seperate image.php or attachment.php template you can always edit the index.php or single.php files and wrap the attachment specific codes in the is_attachment clause like so:

if(is_attachment()){
//attachment page specific code goes here
}

These php functions are loosely based on code I found in this article: Adding text links to WordPress Gallery by Michael Fields. In this article he provides code examples of how to show previous and next thumbnail links in a WP attachment page. I also made use of this previous-next keys in array function which is infinitely useful!

My first set of functions will return text links for previous image, next image and back to gallery. The functions themselves will need to be added to your theme's functions.php file before calling them in your image.php or attachment.php files. So here we go:
Read on…

15 Responses to “WordPress Attachment Page Template Code Snippets”

  • Comment by doriggidy
    Date: April 25th, 2010 at 8:08 pm

    Hi this is a great tutorial. I’m currently using nextgen gallery but want to try your gallery on my sister’s blog…so using the built in image features of WP seem to be the best solution. What you have here should be perfect for her. Great job. One question, If I wanted to have the images themselves link to the next image…how wold i do that?

  • Comment by muscle car
    Date: May 24th, 2010 at 4:29 pm

    hay that’s the cool one,but how to create thumbnail picture in random,place in sidebar or in home page header,thaks b4

  • Comment by Ted
    Date: May 27th, 2010 at 11:47 pm

    This worked perfectly for me … except, for some reason I can’t get the image captions to display. Any thoughts why they might not be coming in?

  • Comment by Shariff
    Date: July 7th, 2010 at 4:13 pm

    Wonderful Tutorial, at last I found it, I am going to try this in my blog.

    Great Going

  • Comment by Jason
    Date: July 9th, 2010 at 4:16 pm

    Thank you for this tutorial, it helped me immensely.

  • Comment by David Hobson
    Date: August 5th, 2010 at 3:59 pm

    First let me say, I am an experienced computer/internet user, however my developer side is still just an apprentice. But as a user, the second I saw white and other colored text on black background, I closed it and went on. I decided to come back and let you know because I’m sure I’m no the only one who’s done so. You might want to see what other developers think and if this technique is advisable. At least my eyes are hurting right now. Peace.

  • Comment by 2k
    Date: October 4th, 2010 at 12:27 pm

    Hi, excellent function to output the all thumbnails to attachments.php Would be amazely cool to adapting it to single.php. Is there any way to output all thumbnails the same way for single.php?

  • Comment by michelle
    Date: October 26th, 2010 at 12:56 am

    Very helpful. Thank you!

  • Comment by Clark
    Date: January 16th, 2011 at 7:38 pm

    Helpful stuff, exactly what I needed!

  • Comment by David
    Date: January 23rd, 2011 at 11:20 am

    Hi, nice tuto ! I just want to say I think the function array_navigate / prev_att_link / next_att_link could be done with one line of code ! See the wordpress function : wp_link_pages(); (http://codex.wordpress.org/Function_Reference/wp_link_pages) and to see an exemple you can look the code of the attachment.php twentyten wordpress theme.

  • Comment by David
    Date: January 23rd, 2011 at 2:15 pm

    Sorry, it’s not wp_link_pages () but previous_image_link(false) and next_image_link () with false option to insert the title : http://codex.wordpress.org/Function_Reference/previous_image_link

  • Comment by onetrek
    Date: February 27th, 2011 at 5:21 am

    This tutorial is good. But it difficult to read because of the page color. Font size if too small. As a web developer I Suggest you to make your template white color. and big font size.

  • Comment by Marirano MARINI
    Date: March 31st, 2011 at 7:44 am

    When I split an article into 2 column the first row of the second column start one line bottom.
    How can I prevent this?

    Thank you. I appreciate your job and I’ll use it when this “bug” will be take off.
    Great work!

  • Comment by surface encounters
    Date: April 7th, 2011 at 5:17 pm

    Thanks manos! Taking the two leading spaced off the end of the functions.php file worked great. Thanks!

  • Comment by Kevin
    Date: June 21st, 2011 at 8:02 pm

    Thanks for the thumbnail function! Works great!!!
    The selecting of text with your particular color scheme is hard to see though!
    Excellent work =)

Leave a Comment

Branded Quiz Games

Date: 9th June 2009 at 12:23 pm | Filed under: flash, portfolio | Author: Sam Burdge | Tags: , , , ,

I have developed a quiz game engine based on this original multi choice quiz by animike. The improvements I made to the original flash file are:

  1. Removed the need for an external XML file, which makes it easier to distribute virally as a stand-alone file.
  2. Added the ability to add infinite arrays of questions, so the quiz will have a different set of questions each time you play.
  3. Added the potential to build arrays of questions based on statistical data, perfect for sports quizes.
  4. Added the potential to plug the game into various scoreboard and in-game advertising APIs such as MochiAds.
  5. Added brandable features such as a 'More Games' link and a preloader screen.

To test the quiz engine I released the first version of my football quiz, with 12 questions drawing from an array of 120 possible questions. It got mixed reviews on newgrounds.com, but seemed to do reasonably well on football / sports specific games sites thereafter. You can try out the first version of the quiz game here: Football Quiz

More recently I have released the first sponsored / branded version of the quiz called Premiership Football Quiz, which is sponsored by one of the UK's leading football websites - FootballFanCast.com. I have plans to work with the FootballFanCast team to develop other football quiz games, relating to specific teams, competitions, etc.

I am also hoping to branch out now into quizes relating to other sports, and to other subjects entirely, such as Pop Music, Movies, TV, Celebrities, Arcade games, World Geography, etc.

If you need a quiz game for your site, or wish to distribute a branded quiz game across a range of games sites please feel free to get in touch. I can quote on a per quiz basis, prices will depend on the level of branding, the number of questions, whether the questions are provided, whether you want me to distribute, etc. So there is no fixed price as such.

1 Response to “Branded Quiz Games”

  • Comment by Jimmy
    Date: September 19th, 2009 at 8:06 pm

    I use latest wordpress what do I do wrong? I get each column one row lower, whatever I do it still does this. Is it a bug with newest Wordpress? Ive followed everything step by step.

Leave a Comment

A Single html Form With Multiple Submit Buttons - Changing a Form’s Action Attribute using jQuery

Date: 15th February 2009 at 4:48 pm | Filed under: development, scripts | Author: Sam Burdge | Tags: , , , , , ,

I was recently confronted with the problem of having a single html form with three different submit buttons, each button submitting the form data to a different php script. This is obviously impossible with html alone, as a form can only have one 'action' attribute, which dictates the URL of the file that the form's data is submitted to.

I searched around on the web for an easy way to implement this and found various examples. One of the best examples I found was on CoderLab's blog: Multiple submit buttons on a multiple blog which uses javascript to apply a different action attribute to the form depending on which button is pressed. Each button in the form has it's own onClick function like so:

<form name="myForm" id="myForm">
Search: <input type="text" id="wrdSearch"/>
<input type="button" name="google" id="google" value="Google" onClick="SendTo(this.id)"/>
<input type="button" name="msn" id="msn" value="MSN" onClick="SendTo(this.id)"/>
<input type="button" name="yahoo" id="yahoo" value="Yahoo" onClick="SendTo(this.id)"/>
</form>

(Visit the page to see the javascript that goes with it: http://blog.coderlab.us/2005/10/04/multiple-submit-buttons-in-a-form/)

As I already had jQuery installed on the site, and the CoderLab script would still need some modification to serve my specific purpose, I decided to see if I could find a simpler way to achieve a similar result using jQuery. The form on my site was a lot more complex, with many fields etc. So what I really needed was a script that would submit all the form data to each of the 3 php scripts depending on which submit button was clicked.

Firstly, I stripped the onClick functions out of the form and removed the name attributes from the buttons too, like so:

<form id="myForm" method="post">
Search: <input type="text" name="search"/>
<input type="button" id="button1" value="Submit to script 1" />
<input type="button" id="button2" value="Submit to script 2" />
<input type="button" id="button3" value="Submit to script 3" />
</form>

I then wrote the following jQuery script to change the form's action attribute accordingly and submit it when each button is pressed:

$(document).ready(function(){

$("#button1").click(function(){
$('form#myForm').attr({action: "script_1.php"});
$('form#myForm').submit();
});

$("#button2").click(function(){
$('form#myForm').attr({action: "script_2.php"});
$('form#myForm').submit();
});

$("#button3").click(function(){
$('form#myForm').attr({action: "script_3.php"});
$('form#myForm').submit();
});

});

The script should work on any browser that is compatible with jQuery (see here: http://docs.jquery.com/Browser_Compatibility)

For more information on installing and using jQuery visit the website: http://jquery.com/

10 Responses to “A Single html Form With Multiple Submit Buttons - Changing a Form’s Action Attribute using jQuery”

  • Comment by A Single html Form With Multiple Submit Buttons - Changing a Form’s Action Attribute using jQuery - PHP-update.co.uk
    Date: March 11th, 2009 at 1:55 pm

    [...] More here: A Single html Form With Multiple Submit Buttons - Changing a Form’s Action Attribute controlling j… [...]

  • Comment by Dickram
    Date: March 16th, 2009 at 6:33 pm

    You rock man. I was just looking for this and found your site. I’m using jquery too, with code igniter.
    Thank you very much!!

  • Comment by David
    Date: September 24th, 2010 at 1:04 am

    Hey, your article gives me a big help. Why using $(’form#myForm’) rather than $(’#myform’) though?? thank you very much

  • Comment by Sam Burdge
    Date: September 24th, 2010 at 1:17 am

    Hi David
    Glad it helped ;)

    there is no difference between using $(’form#myForm’) or $(’#myform’)

    i just wrote it that way as i thought it would make it clearer for the tutorial.

  • Comment by David
    Date: September 24th, 2010 at 4:25 am

    Thank you for your reply!~many thanks mate

  • Comment by Ben
    Date: October 4th, 2010 at 10:12 am

    Brilliant, cheers mate. Really helped me out of a whole

  • Comment by Ben
    Date: October 4th, 2010 at 10:13 am

    that should have said a whole world of frustration!!

    (pressed enter a little early)

  • Comment by Tom Lackey
    Date: April 27th, 2011 at 9:21 pm

    this served me well, thanks!

  • Comment by Vishal
    Date: June 10th, 2011 at 9:50 am

    Wow….great stuff… really helped a lot.. thanx buddy.

  • Comment by Mr. Serra
    Date: June 17th, 2011 at 2:57 pm

    God save the internet and people like you!
    Thank you very much!!

Leave a Comment

Admin76 Web Content Management System

Date: 22nd January 2009 at 9:43 pm | Filed under: development | Author: Sam Burdge | Tags: , , ,

Admin76 is a powerful and versatile web content management system (CMS) designed and developed by 76 Creative. It is a PHP / mySQL driven project, for which I developed it's coding framework.

The main difference between Admin76 and other commercial CMS's is it's potential to be tailored exactly to the website it is powering. It can be transformed into a very 'bespoke' system, and so can be used to power many different genres of website, from a simple 5 page website, to a large news site, image or video gallery or a recruitment site. The only controls available in the CMS will be the exact controls you need to manage your site, nothing more, nothing less!

Other CMS's have certain 'tendencies' which relate to their intended user-base. For instance, WordPress is very much associated with blogging, Drupal is associated with community-driven sites. This is reflected in the possible themes, plugins and addons available for each.

Admin76 on the other hand is more flexible in this respect.  It can power a site with static pages, and news with categories and date based archives in the same way that WordPress can, but it can also power all sorts of different types of lists, with as many custom fields as you wish, e.g. address lists, list of file downloads, event diary, mp3 playlists, video playlists, etc. It can even be made to output XML, so it can be used to fully manage Flash Sites too.

As Admin76 is currently only available to customers of 76 Creative it has no 3rd party features, like plugins etc., available. This, however, is another strength of the system. All of Admin76's features are built in. It has an advanced image gallery system, with multiple file upload, medium size and thumbnail image creation.

Other standard features include RSS Feeds, Multiple Authors / Administrators, Flash Slideshow System, Flash Video Gallery System.

For more info about Admin76, and to enquire about getting your own self-managed, elegantly designed website get in touch with 76 Creative.

Some of the mySQL and PHP functions I have utilised in Admin76 will soon be available as tutorials on my site.

1 Response to “Admin76 Web Content Management System”

  • Comment by New e-commerce module for Admin76 CMS | Sam Burdge
    Date: June 26th, 2009 at 12:16 am

    [...] cart76, e-commerce I have been working for some months now to develop an e-commerce module for Admin76,  the CMS which is currently exclusive to 76 Creative. The e-commerce module, called Cart76, [...]

Leave a Comment

76 Digital Remix Theme

Date: 25th April 2008 at 5:02 pm | Filed under: blog, development, themes, wordpress | Author: Sam Burdge

I have updated my site with my new 76 digital remix theme for WordPress.

The new theme is built on a model I have created for a highly configurable, versatile set of premium themes which I will be releasing this summer. The premium themes will each come in three different versions – Editorial, Media and Ultimate (which combines the features of both editorial and media versions). The themes features will include:

Editorial Version

  • Dynamic site header
  • Rotating news on homepage
  • Feed aggregator to display news from other sites
  • Dropdown navigation for sub-pages
  • Sliding sidebar navigation
  • Sliding comments
  • Lightbox integration
  • Dynamic banner / google advertising integration
  • Gravatar support for authors and commenters
  • Widget ready
  • Plugin ready
  • Author profiles
  • Various post layout options
  • Multiple language support
  • Image gallery layouts
  • Easy to use setup page
  • Feed syndication
  • Various page layouts
  • Full Instructions

Media Version

  • Dynamic site header
  • Slideshow on homepage
  • Dropdown navigation for sub-pages
  • Sliding sidebar navigation
  • Sliding comments
  • Lightbox integration
  • Dynamic banner / google advertising integration
  • Gravatar support for authors and commenters
  • Widget ready
  • Plugin ready
  • Author profiles
  • Various post layout options
  • Multiple language support
  • Image gallery
  • Easy to use setup page
  • mp3 and video support
  • Feed syndication
  • Various page layouts
  • Full Instructions

I will also release a free 'light' version of the theme set, so watch this space!

3 Responses to “76 Digital Remix Theme”

  • Comment by Premium WP Theme News Links | WP-Premiums
    Date: April 25th, 2008 at 8:54 pm

    [...] Burdge is currently working on his 76 digital remix theme, which he is using on his blog at the moment and plans to release in the summer. The theme will be [...]

  • Comment by Леша
    Date: September 24th, 2008 at 3:46 pm

    Интересная штуковина, вот только стоит наверное тоже немало.

  • Comment by Daniel
    Date: February 26th, 2010 at 7:13 pm

    Hello is this theme (76 Digital Remix) Theme for sale ? I didn’t find the price here , I like it a lot thanks , Daniel

Leave a Comment