Connect with us

WordPress Coding & Design

Mixing Gallery and Blog Posts



This is part 3 on using the built in WordPress Gallery features. Part 1 and Part 2 are recommended reading also.

So, you’ve created a few galleries, you’ve got your single image page looking spot on with all the details and EXIF data displaying. However when you create a new gallery what happens on the front page of your site? If you’re display the full post, the whole gallery will display. If you’re displaying an excerpt, you’ll get a short excerpt if you’ve set one. Personally I like the way Matt Mullenweg has set his blog up. You get the full post if it’s a standard blog post, but if it’s a new gallery it will display a thumbnail from the gallery, along with a short excerpt and the number of photos in that gallery.

So how can we mix these together on the front page? First off we need to ensure that the code we put in place only affects the gallery posts and not the standard posts. So this is easily done by checking which category the post is in:

<?php if (in_category('3')) {
// add our code for dealing with a gallery post here
} else {
} ?>

Note, the ID of 3 used above is the category ID. You’ll need to check your categories and replace 3 with the ID of your gallery category.

Now we need to work out the code.

Retrieve a Photo

To get a photo we take the ID of the gallery post and use the get_posts() function to retrieve the images associated with that post. This is relatively easy and the following code will get one image randomly for us:

$args = array(
'post_type' => 'attachment',
'numberposts' => 1,
'post_status' => null,
'post_parent' => $post->ID,
'orderby' => 'rand'
$attachments = get_posts($args);
foreach ($attachments AS $attachment) {
// code to display the image goes here

The above code will randomly pull out just 1 attachment connected to the post currently being displayed in the loop. We then use the foreach() loop to retrieve the information from the $attachments array. We can retrieve any information from the database record for this image, however we just need the URL of the image, the title of the image and its record ID ie.

$alttxt = $attachment->post_title;
$imgid = $attachment->ID;
$fileurl = $attachment->guid;

Unfortunately that’s not all there is to it for getting the thumbnail. The $fileurl value will contain the original image’s URL, ie. our large version. We need to display the thumbnail, not the large file. When an image is uploaded it will be resized into a medium and thumbnail size. All 3 files are stored in the same location as

  • Original: filename.jpg
  • Medium: filename-600×400.jpg
  • Thumbnail: filename-150×100.jpg

The second two filenames are basically filename-widthxheight.jpg so these figures will depend on your settings under Options – Miscellaneous.

So, we need to make filename.jpg become filename-AxB.jpg where A and B are the width and height of your thumbnail. Luckily we can use the EXIF data to work out the size of the thumbnail and added that into our image filename:

$meta = wp_get_attachment_metadata($imgid);
$imgw = $meta['sizes']['thumbnail']['width'];
$imgh = $meta['sizes']['thumbnail']['height'];
// now get the file extension and take it off our file url
$imgext = substr($fileurl, -4);
$fileurl = substr($fileurl, 0, -4);
// and now put it all together
$fileurl = $fileurl."-".$imgw."x".$imgh.$imgext

It’s a bit messy, but it will do the job. Whilst you can get the thumbnail file path directly from the EXIF data, this is the full file path and not the URL path, so at present the above is the best way I’ve found.

Count the Photos

It’s nice to be able to say how many photos are in the gallery, and this is easily done with a slight code change to the above. Instead of retrieving just 1 attachment we can retrieve them all, count how many are returned, but force the foreach() loop to only display 1. To retrieve all the attachments we change the line in our arguments array for the get_posts() function to

'numberposts' => -1,

Then to get the number of attachments returned we use the PHP array count() function once the get_posts() function as been executed:

$noimages = count($attachments);

The last thing we’ll need to do is make the foreach() loop only run once, so we use the break; command, which will break out of the loop.

The Final Code

So putting all of this together we get the following code:

[sourcecode language=”php”]< ?php if (in_category('3')) : // is a gallery post so alter the display $args = array( 'post_type' => ‘attachment’,
‘numberposts’ => -1,
‘post_status’ => null,
‘post_parent’ => $post->ID,
‘orderby’ => ‘rand’
$attachments = get_posts($args);
$noimages = count($attachments);

if ($attachments) {



A PHP Developer using WordPress to power both blogging and commercial CMS sites. I've written and released a couple of plugins for WordPress and am currently writing plugins for use on commercial websites.

Continue Reading

WordPress Coding & Design

Will Artificial Design Intelligence Takeover Web Designing and Development?



Artificial Design Intelligence

The worlds are colliding.

Web designing and development happens in two primary ways:

  1. DIY (bloggers and small business owners buying readymade themes, web hosting account, and setting up the website after reading a lot of online resources)
  2. Agencies (dedicated agencies that create websites from scratch, using manual coding and templates, and these are usually high budget)

There is a third way, which in the next couple of years can replace both the above methods to a large extent. Will it? Let’s see.

Artificial Design Intelligence

Artificial Design Intelligence (ADI) is the ‘third’ way wherein companies are creating technology where a website could design and build itself. In 2003, prior to ADI, Adobe unveiled its suite of web designing tools and the industry experts spelled it as a doomsday for designers.

Will this ADI technology completely eradicate the need for website designers and developers? Certainly not, says David Kosmayer from Bookmark. Bookmark is a website builder that uses ADI to cater to each user’s specific and unique needs. Kosmayer opines that ADI technology will become a productivity tool for innovative developers and designers where the technology will improve and escalate the efforts of the team involved in automating the website development process. He is anticipating a website building ADI revolution with Bookmark, thriving to be at the forefront of this inevitable movement.

David gave me an insider peek into the ADI technology they are developing, scheduled to release in the next couple of weeks. Here it is:

The ADI technology improves possibilities.

I create my own websites and blogs. Now, if I have access to technology that Bookmark is designing, it will simplify my work. It’s unassumingly perfect for eCommerce stores. The ADI asks what kind of store does the user want – from a Bistro to a Laundromat, the user has tons of varieties. Once the basic is uploaded, you can add Focus Groups and Modules, and make the site live.

This ADI technology is akin to a personal assistant that understands my business needs and creates a customized ‘product’ to use.

After Bookmark, companies like Wix and TheGrid have ventured into the AI technology space too.

AI for website development and designing is an uncharted area. Chris Lema has a brilliant article title, Has Website AI Arrived?

The world of content marketing should rejoice. AI technology will strategically and dynamically depend on content to design the layout of the site. Here, content could be anything – article length, article quantity, images, videos and more.

Artificial design intelligence is still in nascent stages.

Who could use ADI technology? Bloggers, digital marketers, affiliate marketers, consultants, and other small business owners will find AI entertaining and useful. This group of professionals is usually a one-man army with a small remote team. It cuts down cost on resources as users will probably use the ADI service on a monthly subscription basis. As such, businesses can focus on branding and generating revenue.

The stress of creating dynamic websites, learning technology, and implementing them is removed entirely.

Personally, I agree with Lema that AI technology for website development and designing is yet to mature. With the coming of chatbots and other AI software, give this a year or two before the artificial design intelligence technology for websites booms.

Continue Reading

WordPress Coding & Design

How to Stop Comment Spam in 60 seconds with CleanTalk



Blog comments can be one of the most valuable assets to your blog, but they can also be a huge burden at the same time. Even with Akismet installed on my blogs, I still have to manually go through and remove the junk and spam comments many of my sites gets on a daily basis.

When I login to my WordPress dashboard, I will continually junk like this just sitting there and waiting for my approval or deletion. The majority of comment spam happens because they are trying to get a backlink to a site, either through a link within the comment or from the username.


If you have a small WordPress site, you might not be getting overwhelmed with spam comments yet, but it’s simply just a matter of time. The worse part is that it’s pretty much all coming in on an automated basis, which means cleaning up your spam comments manually can waste endless hours of your valuable time.

Comment spam is something all bloggers have to deal with, and while there are ways to minimize worthless and fake comments with plugins like Akismet or using CAPTCHA forms, these methods either don’t work or are just too annoying to setup. felt the same way and they wanted to create a comment spam solution that works for all blog site owners, while also having a solution that actually works.

How CleanTalk WordPress Spam Plugins Works

Like most things in the world, you just want the product or service to work and not have to deal with the complexities of how it’s made. This is how most online marketers and bloggers feel — they just want a solution and not have to deal with coding, programming and working with a dev team to figure it out.

CleanTalk is quite advanced on the backend, but super easy to setup and use from a site owner perspective. Through it’s cloud based platform, CleanTalk actively monitors the visitors on your site and makes sure the comments being made, are from actual visitors (not spam bots).

The process of how CleanTalk works, is as follows:

  1. A visitor writes a comment or registers.
  2. CleanTalk plugin sends action parameters into the CleanTalk cloud.
  3. Service analyzes the parameters.
  4. If this is a visitor, the comment will be published. If it’s a spam bot, then CleanTalk blocks this comment or registering.
  5. Parameters are written to the log which can be viewed in the Control Panel service.

Not only does CleanTalk protect your blog comment area, it also covers all forms throughout your site (contact, registrations, etc). When logged into your account through their site, you will also have access to real-time stats on how well it’s protecting your site and showing you what activity is happening where.

How to Install CleanTalk on WordPress

Since CleanTalk is a WordPress plugin, it’s super easy to setup. All you need to do is visit their main site at, create an account and grab your access key on the following page.

After that, all you need to do is head over to your WordPress dashboard, go to the “Plugins” section and search for “CleanTalk”.

CleanTalk Installation

Install the plugin and then throw in your access key and you are ready to go!


To make sure the plugin is properly installed and running, go back to your blog and complete a dummy comment, registration or contact message with the email address and you should then see the plugin react with the message like the one in the screenshot below.


You can also head back to the main dashboard at to monitor your site comment stats and manage how many sites you would like to add the plugin to.

Get Your Free 14 Day Trial of CleanTalk

You can register on the site and install the plugin right away. After completing this step, you will have 14 days of free access to their comment spam blocking service. After the 14 days, you will then have the renew your account.

The good news is that the cost of CleanTalk’s comment spam blocking plugin is just $8 per year, and you can save even more by using coupon code “BLOGGINGTIPS“.

Head over to, create your free account and add the plugin to your site. It’s only takes a couple minutes and it will save you a massive amount of time in the long run. Eliminate comment spam from your site forever!

Continue Reading

WordPress Coding & Design

The Importance of Responsive Web Design



Responsive web design is quickly changing how sites are viewed on the internet and on mobile devices. Back when I first started making money online in the mid 90s, everything was so basic and simple with web design… it was pretty much all HTML.

Then in 2007 I started using WordPress to create my first blog and the rest of my sites there after.

However, this was only the beginning. Now with everyone so focused on using mobile and other various devices to browse the internet and with the wide range of desktop sizes for viewing, it’s now more important than ever to make sure you have a site that is capable with all solutions.

I still find it amazing that I can look up sites on my phone or iPad and still come across sites that aren’t mobile optimized or that don’t load correctly. It’s quite a shame and something that really needs to be fixed immediately. Statistics show that 25% of internet users only access the internet via a mobile device. Have you checked how your site loads on a mobile device lately? If not, it might be time for you to invest some resources into your web design and development. By working alongside a respectable design team, they will be able to improve the performance of your site, while making sure it is fully optimized in the process.

Thus bringing us to responsive web design

Responsive web design refers to a website designed to adapt to whatever device a visitor is using. The same applies for desktop viewing as well. You can make the browser bigger or smaller and the content on the site will continue to adapt to your viewing solution.

Most premium wordpress themes are now responsive as well, as it’s almost become a requirement for site owners now.

When it comes to designing and coding wordpress themes, I’m the last guy that wants to deal with these issues. Fortunately there are designers and teams dedicated to mastering the art of design and wordpress.

For those of you who are wondering how responsive sites are created and the various tech specs involved, be sure to check out the infographic below from

What is Responsive Web Design

Continue Reading