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…

Leave a Comment

WordPress attachments hack

Date: 9th June 2009 at 3:19 pm | Filed under: blog, development, scripts, wordpress | Author: Sam Burdge | Tags: , , , , , ,

While working on a WordPress site recently I came up against a problem that had never occurred to me before. The client wanted each post excerpt on the homepage to include an image which when clicked would link to the main post (permalink) itself. The built in functions of wordpress when inserting an image allow you to link to either the 'File URL' (i.e. the full size version of the image) or to the 'Post URL' which is actually an attachment page in wordpress which displays the image, but does not include the text of the actual post itself. However, without either editing the html of each post (not an option for this client) or inserting the image without a link, and then adding the permalink to the image (too long winded) there was no simple way to create the image links in the way they wanted them.

My solution to this was to create a very basic hack which would allow them to use the 'Post URL' link when inserting images, but instead of linking to the attachment page, the link would automatically be updated to link to the post's permalink itself.

Here is the basic php function that you would need to insert into your theme's functions.php file:

function lose_attachment($content){
return preg_replace('/<a(.*?)href="(.*?)\/attachment\/(.*?)"/i', '<a$1href="$2"', $content);
}

add_filter('the_excerpt', 'lose_attachment',2);

This will remove the 'attachment/name-of-image-file' part from the URL making it link to the post's permalink itself.  I hope someone out there finds this useful!

5 Responses to “WordPress attachments hack”

  • Comment by akshay
    Date: June 14th, 2009 at 3:27 pm

    really good post….tutorial is very helpful for me …thanks a lot for giving out such good tutorials

  • Comment by Alex Holsgrove
    Date: June 29th, 2009 at 8:54 am

    This was a great help. Thanks for sharing the code

  • Comment by Abeon
    Date: July 13th, 2009 at 10:26 pm

    This is a great little hack :)
    Simple but effective!

  • Comment by Nate
    Date: August 12th, 2009 at 1:21 pm

    I can’t wait to try this out.

  • Comment by Betaclick SEO Company
    Date: September 17th, 2009 at 7:32 pm

    Thanks for the code dude, i need to try this out on my wordpress blog! As im learning advanced use of it.

Leave a Comment

Bespoke theming for WordPress Arcade sites

Date: 12th March 2009 at 7:00 pm | Filed under: blog, portfolio, themes | Author: Sam Burdge | Tags: , , , , , , , , ,

loopy1loopy2loopy4loopy3

Screenshots from the new Loopy Pursuits Arcade Site.

I have recently entered the world of Arade Website webmastering and, being the WordPress geek I clearly am, have chosen WP as the management sytem to drive my arcade sites. I have developed two new plugins WP Games Embed (released) and WP Mochi (so far unreleased) and launched my first arcade site Zap Gamez.

In the past I have had a fair few jobs designing custom / bespoke themes for WordPress blogs and for sites that use WP more as a CMS. These jobs are where most of my plugins originate from, adding custom features to sites when no existing plugin is available to achieve the same functionality.

My most recent custom theme is for the arcade site Loopy Pursuits, for which the games content is also driven by my two plugins WP Games Embed & WP Mochi. The theme is incredibly simple - no sidebar or nav bar as such, 3 basic layouts - Home page, Category/Tag/Search results page & single page view where the game itself is displayed. Apart from the formatting of the comments there is nothing about the theme which suggests it is wordpress. No 'recent posts','blogroll' or 'tag cloud' or any other content that could be associated with standard WP blog design.

The theme incorporates google advertising interspersed with the content. My approach to google advertising with arcade sites is to use predominantly image ads as gaming is very visual, and image ads seem to sit better within a very image based site layout. I also use the standard approach of identifying key placements for ads, sometimes referred to as 'Hot Spots', which are normally adjacent to key areas of the page, such as navigation, main content (i.e. the game), etc.

During the development of Loopy Pursuits the WP Mochi Plugin has come a lot closer to releaseability. It still lacks an options page which it would definitely need, but it now incorporates the Mochi Leaderboard (score board) using the Mochi Publisher Bridge, it also now has the ability to add entire directories of games automatically too!

If you are interested in getting a custom design for your WordPress blog, or if you want an arcade website set up, or if you are trying to do something different / unusual with WordPress please feel free to get in touch. I would be happy to provide a quote for any such jobs. I have been working with WordPress since version 1.2 and have set up many WP blogs in that time, I have never used a theme by someone else, custom built is the only way for me!

4 Responses to “Bespoke theming for WordPress Arcade sites”

  • Comment by العاب
    Date: April 4th, 2009 at 11:16 am

    look at my site
    its an arcade power by wordpress

  • Comment by GameGag
    Date: June 8th, 2009 at 11:18 pm

    Wow what a great looking theams, please keep up your innovative touch.

  • Comment by EnjoySilk
    Date: September 18th, 2009 at 1:22 pm

    It’s so beautiful theme!

  • Comment by Frank
    Date: January 9th, 2010 at 2:13 am

    Great theme. My site looks great with this. Thanks

Leave a Comment

Games Arcade Website powered by WordPress

Date: 28th February 2009 at 4:04 pm | Filed under: blog, portfolio, wordpress | Author: Sam Burdge | Tags: , , , ,

I have recently been working on a highly versatile premium theme for WordPress which is due for release soon. As part of the project I wanted to test how the theme (and WordPress itself) could work with sites of various different genres. My intention was that the theme would be configurable enough via it's Options Menu that it could easily be styled to suit corporate sites such as recruitment, blue chip company, technology site  & product portfolio, media sites such as magazine, news, image & video gallery and also youth oriented sites such as music / band website,  games website.

The theme also features simple integration for banners and advertising,  so creating a couple of  'working example' sites was not only a good way of testing the theme's versatility but also a potential source of a few extra quid!

I had been wanting to do a games & videos website for a while, and I had built the theme's default settings around a 'corporate magazine' look & feel, so I decided the games site would be a great way to test the theme. Here is my wordpress games arcade site so far:  Zap Gamez

I decided to look around and see what articles I could find about creating a games arcade website with wordpress, or if there was a plugin that allowed you to easily insert games into your WordPress blog. I found this article by Emanuele Feronato:

It describes a method of populating your WordPress blog with games via a feed from MochiAds (A source of free games for websites) using custom fields. However, for my site I wanted to be able to integrate games from various free content suppliers and host games on my own server as well as embedding games hosted by content suppliers. What I really wanted was a plugin that could embed games into posts or pages using shortcodes.

THE PLUGIN

The prototype plugin I have built includes the following features:

4 Different views:

  1. Grid view - a grid of thumbnail images linking to each game (can be restricted to a single category or parent category)
  2. Category view - this view includes a medium sized image and a written description of the game
  3. Single page view - the page where you play the game itself
  4. Featured Game view - a page with a list of featured games

Different embedding modes:

  1. iFrame embedding - embed iFrame content using code provided by free games sites, or use this method to display games from your own server where an html file has been provided with the free game download.
  2. Flash embedding - embed Flash content using embed codes provided by other sites, or embed flash games directly from your own site. You can even upload them easily using the wordpress 'Add Media' tool.

The beta version of the WP Game Embed plugin can be found here.

22 Responses to “Games Arcade Website powered by WordPress”

  • Comment by ashish
    Date: March 17th, 2009 at 7:58 am

    good article, thanks for this useful info, I have dug and stumbled this article. I will keep visiting for more useful information.

  • Comment by alex
    Date: March 27th, 2009 at 2:01 pm

    great article. thank

  • Comment by fencze
    Date: April 21st, 2009 at 8:03 am

    this game is so good I have played it several days ago

  • Comment by Budi
    Date: April 23rd, 2009 at 1:34 pm

    Keep it up man! Now, when I need useful info I’ll come here.
    Smarter than an average blog…cheers

  • Comment by Steven
    Date: May 19th, 2009 at 1:52 am

    Nice Kindly visit my site

  • Comment by Games Arcade Website powered by WordPress Sam Burdge | Cast Iron Cookware
    Date: May 26th, 2009 at 8:32 pm

    [...] Games Arcade Website powered by WordPress Sam Burdge Posted by root 19 hours ago (http://www.samburdge.co.uk) 4 responses to games arcade website powered by wordpress comment by ashish date march 17th 2009 at 7 58 am good article thanks for this useful info Discuss  |  Bury |  News | games arcade website powered by wordpress sam burdge [...]

  • Comment by kansas city bbq
    Date: May 29th, 2009 at 3:48 pm

    This is a great game. Great info

  • Comment by Games Arcade Website powered by WordPress Sam Burdge | Paid Surveys
    Date: May 29th, 2009 at 4:34 pm

    [...] Games Arcade Website powered by WordPress Sam Burdge Posted by root 6 hours ago (http://www.samburdge.co.uk) 5 responses to games arcade website powered by wordpress comment by ashish comment by budi date april 23rd 2009 at 1 34 pm keep it up man reliable web hosting linux amp windows hosting starting at just 1 99 per month Discuss  |  Bury |  News | games arcade website powered by wordpress sam burdge [...]

  • Comment by free business advertising
    Date: June 15th, 2009 at 2:42 am

    wow i think wordpress just for blog, but im wrong, good idea bro

  • Comment by pikachu
    Date: June 16th, 2009 at 8:04 pm

    visit mine i have lotz of free games too -yay-

  • Comment by eaonflux
    Date: June 19th, 2009 at 7:05 am

    Nice plugin, made myself also a mochiads wordpress plugin, its still in decelopment.
    i heavily cusomized a video theme for the layout.
    you might wanne check it some times.
    god job…
    grts,

    chris

  • Comment by Dave Smith
    Date: July 10th, 2009 at 5:18 am

    Hey, this is cool free stuff

  • Comment by fred bennett
    Date: July 17th, 2009 at 2:58 am

    Awesome post. Very informative :)

  • Comment by Sam Burdge
    Date: August 3rd, 2009 at 3:49 pm

    This post must contain keywords that are attracting too many spam bots. Sorry but comments are now closed on this post.

  • Comment by Jambo
    Date: August 18th, 2009 at 7:37 pm

    i am new to wordpress but i like this site, good article… and i like the sound od the flash arcade….

  • Comment by bayu
    Date: August 30th, 2009 at 5:00 pm

    i have downloaded your beta plugins, nice plugin mate, thanks

  • Comment by Neo
    Date: September 13th, 2009 at 1:12 pm

    So, this is interesting for me, I will translate it and post to my saite http://grang.info Thanks, Alex

  • Comment by LacnyWebHosting
    Date: October 2nd, 2009 at 2:14 pm

    Great article, adding it to my bookmarks!

  • Comment by blackhatguide
    Date: October 12th, 2009 at 10:28 pm

    Great work with the blog mate let me know if you want to partner up with my blog as well! =]

  • Comment by Jocuri barbie
    Date: October 22nd, 2009 at 3:17 pm

    Nice your beta :) I’ll gonna translate in romanian language this post and i will put a direct link to your site. Thank you

  • Comment by Kwik Games
    Date: November 5th, 2009 at 9:35 pm

    Very cool. I finally got around to changing my own games site, http://www.kwikgames.com over to Wordpress earlier this year. After years of updating static HTML pages it was high time I made the switch and was thoroughly worth it…

    I love your thumbnail “grid”! You might want to use a rating plugin, there are quite a few good ones, so you can show most popular games and encourage more user interaction, but overall it looks great. And to anyone thinking of using WP for a games site I highly recommend it!

  • Comment by kral oyun
    Date: November 6th, 2009 at 2:29 am

    that is what i need :) thanks!

Leave a Comment

WP Games Embed Plugin

Date: 28th February 2009 at 1:27 am | Filed under: development, plugins, wordpress | Author: Sam Burdge | Tags: , , ,

Turn your wordpress blog into a games arcade!

This beta version WordPress plugin, WP Games Embed, makes it easy to embed games into your WordPress blog by using shortcodes in your posts and pages. WP Games Embed is intended to be able to support content offered by the various free games sites out there using the codes or downloads they provide.

FEATURES

4 Different views:

  1. Grid view - a grid of thumbnail images linking to each game (can be restricted to a single category or parent category)
  2. Category view - this view includes a medium sized image and a written description of the game
  3. Single page view - the page where you play the game itself
  4. Featured Game view - this view is similar to category view, but allows you to pick the games yourself to create your own 'Featured Games' page.

Different embedding modes:

  1. iFrame embedding - embed iFrame content using code provided by free games sites, or use this method to display games from your own server where an html file has been provided with the free game download.
  2. Flash embedding - embed Flash content using embed codes provided by other sites, or embed flash games directly from your own site. You can even upload them easily using the wordpress 'Add Media' tool.

WORKING EXAMPLE

Visit Zap Gamez Arcade to see an example of the plugin in action.

INSTALLATION

  1. Download the plugin from the link at the bottom of this page
  2. Upload the wp-games-embed.php file to your wp-content/plugins folder.
  3. Activate the plugin from the Plugins page in WordPress.

USAGE

Use shortcodes to embed games into your posts, or to create a grid of thumbnails on a page or your home page.

Embedding a game in a post:

Shortcode: [game /]

Additional attributes:

  • width - the width of the game
  • height - the height of the game
  • src - the url of the game (html file for iframe embedding, swf file for flash embedding)
  • flash - if set to true flash embedding will be used, if set to false iframe embedding will be used. (default=false)
  • thumb - the url of the thumbnail image (70px x 60px)
  • main - the url of the large image (appx 300px wide)
  • title - the name of the game!
  • description - your description including controls etc.
  • featured - whether this should be formatted as a featured game. (default=false)
  • game_url - only to be used in Featured mode (when featured is set to true). See  the shortcode examples below for more details.

Shortcode Example 1 (embedding game as iFrame):

[game width="640" height="480" src="http://www.example.com/games/pacman.html" thumb="http://www.mysite.com/images/pacman-small.jpg" main="http://www.mysite.com/images/pacman-medium.jpg" title="PacMan" description="This is a great game! Use the arrow keys to play." flash="false"/]

Shortcode Example 2 (embedding game as Flash):

[game width="640" height="480" src="http://www.mysite.com/games/pacman.swf" thumb="http://www.mysite.com/images/pacman-small.jpg" main="http://www.mysite.com/images/pacman-medium.jpg" title="PacMan" description="This is a great game! Use the arrow keys to play." flash="true"/]

Creating a grid of thumbnails on a page:

Shortcode: [get_latest_games /]

Additional attributes: list_category - the category id for the games you want to appear in the list.

The list_category attribute makes it possible to display the latest games under a certain category e.g. 'Arcade' or the latest games under all categories. Simply set up a main category called 'games' and then create all your games categories (action,adventure,sports, etc.)  as sub-categories.

Shortcode Example 3 (thumbnail grid):

[get_latest_games list_category="2" /]

Creating a Featured Games page:

Shortcode: [game /]
Additional atrtributes: (see above)

The important attributes for creating a features games list are 'featured' which should be set to true, and 'game_url' the url where the game can be played on your site.

Shortcode Example 4 (featured games):

[game  main="http://www.myblog.com/uploads/pacman-medium.jpg" title="PacMan" description="This is a great game! Use the arrow keys to play." featured="true" game_url= "http://www.myblog.com/games/pacman/" /]

[game  main="http://www.myblog.com/uploads/donkeykong-medium.jpg" title="Donkey Kong" description="This is a great game! Use the arrow keys to play." featured="true" game_url= "http://www.myblog.com/games/donkey-kong/" /]

DOWNLOAD THE PLUGIN


14 Responses to “WP Games Embed Plugin”

  • Comment by imad
    Date: March 5th, 2009 at 11:28 am

    good work:) I am going to install it , I have also interest in the wp Mochi plugin..
    Thanx for sharing

  • Comment by Sam Burdge
    Date: March 5th, 2009 at 2:02 pm

    Hi Imad
    Good luck! Don’t forget to post a link to your arcade here as an example…
    The mochi plugin needs a bit more development to integrate the mochi ‘bridge’ which gives the scoreboard functionality etc.
    Sam

  • Comment by The Wordpress Arcade Experiment Has Begun! - Page 2 - Talk Arcades
    Date: March 12th, 2009 at 9:34 pm

    [...] the WP Super Cache plugin, which speeds it up a lot! I have also developed a wordpress plugin WP Games Embed (very much a beta at the moment) which allows you to embed games in a wordpress blog with various [...]

  • Comment by acrylic
    Date: March 19th, 2009 at 9:29 pm

    Hello Sam and thanks for this wonderful plugin.

    I only have a slight problem with the get_latest_games shortcode. Every time I put in and define the category (for example 20) it lists all content from all categories. It might be a bug or might be something that I’m looking over.

    Thanks for your help

  • Comment by Sam Burdge
    Date: March 20th, 2009 at 2:10 am

    Hi Acrylic

    The get_latest_games shortcode will return all posts under a category, and all posts under child categories of that category. So if you have a main category called ‘games’ with an id of 1 and sub-categories of games such as ‘action’ (id =2), ‘arcade’ (id = 3), ‘fighting’ (id =4), etc. if you call category 1 in get_latest_games you will get all games, but if you call category 2 you should just get ‘action’ games.

    If this doesn’t help please comment again as it is this type of feedback that helps me to develop and improve my plugins over time.

    Sam

  • Comment by acrylic
    Date: March 20th, 2009 at 3:20 pm

    Hi Sam!

    I tweaked the code a bit and now it’s doing what I need. My concept was to have the grid system represented on a separate wordpress page rather than in a single post.

    So I created a new page template. The problem that I encountered was that the page template gets the content by running the loop first but the ep-embed.php runs the loop again. So what happens is that the page template loops through all the posts you have and displays the content.

    What I did was that I omitted the while loop and left the if conditional in. In this way the loop only runs when you have a content in your page and retrieves it. Once it happens it activates your function call which loops through the given parameters and retrieves all the game posts.

    I hope I made sense :/

  • Comment by Harri Nyman
    Date: March 26th, 2009 at 11:52 am

    Interesting plugin, no doubt - however I have interesting dilemma, is there some kind of limit how many games is needed before grid appears? On my site it’s not working, at least not yet.

  • Comment by Exam Philippines
    Date: April 1st, 2009 at 4:29 pm

    thank you so much for sharing this plugin. really helpful to my game site

  • Comment by Bilal
    Date: April 11th, 2009 at 7:10 pm

    Hi, great plugin.
    One question, if we use feeds to get mochi games can we use this plugin to show those games in posts?

  • Comment by Create a Wordpress Arcade | I love games
    Date: April 20th, 2009 at 6:15 am

    [...] wp-games-embed-plugin [...]

  • Comment by Eoin
    Date: May 7th, 2009 at 1:41 am

    Hi,
    I’m trying to get this to work, but can’t quite get it right. The plugin is activated - and this is code that I’m trying to use - (I changed example.com and mysite.com to our site)
    [game width="640" height="480" src="http://www.skuzziport.com/games/pacman.html" thumb="http://www.skuzziport.com/images/pacman-small.jpg" main="http://www.skuzziport.com/images/pacman-medium.jpg" title="PacMan" description="This is a great game! Use the arrow keys to play." flash="false"/]
    grateful for tips!

  • Comment by Sam Burdge
    Date: May 9th, 2009 at 9:50 am

    Hi Eoin
    In what way is it not working? Do you have an example I can look at?

  • Comment by Mark
    Date: September 19th, 2009 at 3:48 am

    Thanks for this little plugin…it works a treat.
    I’m gonna use it to add games as I go along, and then put a category page up… in the meantime I’ll just add each game I find as a blog post.

    The 1st game attempt can be found here….

    http://www.foundstuff.co.uk/2009/magic-towers-solitaire-an-addictive-little-solitaire-game/

    Excellent plugin and simple to use.

  • Comment by Steve
    Date: October 30th, 2009 at 3:13 am

    Well it seems to me to be quite useless, the grid view shows evey post of the whole blog, fine if 2-3 is all you have, but when in the 1,000s very terrible.

Leave a Comment