Connect with us

WordPress Coding & Design

Using a Functions file



You may have used a theme in the past, or are currently using one, that has a functions.php file in it. The Theme Functions file was introduced around the time that widgets came on the WordPress scene, usually containing just the code to register the dynamic/widgetised sidebars, however they’re useful for so much more. If you don’t already have a functions file then just create a blank file in your theme directory called functions.php.

Think of the functions file as a way to add PHP to your site without needing to code up a plugin everytime you want to make a change. The functions file can contain your own functions to make jobs quicker on the frontend, or they can use the filter hooks available to plugin authors, to manipulate the way a lot of the template tags work.

The great point with this file as well is that you can copy it across to each new theme to save you time on having to make your usual custom changes. I tend to spend a good hour or two adding in my own additional bits of code into a new theme eg. the social bookmarks I prefer to use, my recent posts list with the comment count after the posts etc., however with the functions file I can create a function to do all of this and then just reference it in my theme with one line.

Simple Function

A simple function would be to display the social bookmarks I use/display at the end of my posts. I have the following function in my functions.php file:

[sourcecode language=”php”]< ?php function display_sblinks($cssid = "social") { global $post; ?>

< ?php } ?>[/sourcecode]

The code above accepts a value for the id of the list, or if one isn’t set then it uses the default of ‘social’. Then it just outputs the list as normal, using the template tags for the URL and post title. Then all you would need is to place a call to the function when you want the list displaying ie.

<?php display_sblinks(); ?>

Or you can specify a different id name for the list eg.

<?php display_sblinks("sblist"); ?>

This is just a simple example of how you can use it.

Using a Filter

A more advanced function is to use one of the filter hooks to amend the default output. Last week I wrote about the wp_page_menu() function, and Dan Schulz made a comment with a good point, did we really need a div around the list, as a list is block level and could just have the specified class inserted into that.

So I had a play with a function and came up with the following code to go into your functions file (I don’t think it would warrant being a plugin to be honest). Feel free to use this of course 🙂

if (function_exists('wp_page_menu')) {
add_filter('wp_page_menu', 'pgmenu_filter');
function pgmenu_filter ($page_markup) {
preg_match('/^<div class="([a-z0-9-_]+)">/i', $page_markup, $matches);
$divclass = $matches[1];
$toreplace = array('<div class="'.$divclass.'">', '</div>');
$new_markup = str_replace($toreplace, '', $page_markup);
$new_markup = preg_replace('/^<ul>/i', '<ul class="'.$divclass.'">', $new_markup);
return $new_markup;

The first line of this code checks that the function wp_page_menu exists to avoid any errors if you’re not using WordPress 2.7. Then we have a filter, which takes the output of the function wp_page_menu and runs it through the function pgmenu_filter, which does the following

  • Line 4 and 5 gets the value of the div class
  • Line 6 and 7 removes the surrounding div from the output
  • Line 8 replaces the ul tag with a ul tag and a class attribute, with the value of the original div class
  • Line 9 then returns the new output

Bearing in mind the output would be something such as

[sourcecode language=”html”]


The new output would be

[sourcecode language=”html”]



So as you can see, the functions.php file is actually a fairly powerful file to have in your theme directory. You can remove a lot of that custom coding from your theme files into their own functions, and then all of your custom code is in one place and easy to change.

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