Connect with us

WordPress Coding & Design

Enhance your Blog Design with JQuery



Recently I visited a blog site where the sidebar was so neat and tidy it looked great. There was plenty in the sidebar but thanks to a bit of simple JavaScript the ‘busy-ness’ was contained well. It was using a simple show/hide but worked very effectively. I’ve also seen it in use with hiding a comment form out of the way until it’s needed.


JQuery is a JavaScript library that simplies event handling, animation, Ajax interactions and much more. The WordPress admin uses JQuery to enhance a variety of sections – the show/hide tabs in the Write page, the lightbox for the media uploader. So it’s already built into WordPress, all we need to do is call it from the front end and use it ourselves.

JQuery is stored at /wp-includes/js/jquery/jquery.js. To use this we need to load it into the header of our page. So we need to add the following line in our header.php theme file, ideally just before the wp_head() tag (thanks to Gary for pointing out the wp_enqueue_script() tag – will post on this soon!).

[sourcecode language=”html”]< ?php wp_enqueue_script('jquery'); ?>[/sourcecode]

This will then load the JQuery library whenever someone loads your site.

Setup the Target

To target a particular section on your site you need a way to identify the trigger and the section to show or hide (we’ll call this the target). For this example we’ll target the Archives. The code from the Classic theme for outputting the Archives is

[sourcecode language=”php”]

  • < ?php _e('Archives:'); ?>
      < ?php wp_get_archives('type=monthly'); ?>
  • [/sourcecode]

    This will then give us an output of

    [sourcecode language=”html”]

  • Archives:
  • [/sourcecode]

    So here our trigger is the ID ‘archives’ and the target is the list within the ‘archives’ ID.

    The JQuery

    So to make this work we need to do the following steps with JQuery.

    1. Hide the target on loading (we use JQuery rather than CSS for this so that if a visitor doesn’t have JavaScript enabled they’ll just get the fully expanded version instead).
    2. When a user clicks the title ‘Archives’ it shows the target, ie. the list of Archives, if it’s not already displaying. If it’s already on display it hides the target.

    So, to hide an element or several elements on a page on loading we use the hide() method. To target the correct element we can use a html tag name, ID or class name. In this case we’ll use the ID as it should be unique and won’t affect anything else on the page.

    Before we can start we first need to surround our JQuery commands by a function that will load the commands when the page loads. So below the call to the JQuery file that we added above, we need to insert the following code

    [sourcecode language=”html”][/sourcecode]

    Then, to hide the archives on page load we insert the first command below, where the comment says to in the code above.

    [sourcecode language=”html”]$(‘#archives ul’).hide();[/sourcecode]

    To break this down, we have

    • $ – this is shorthand for jQuery. We could also write ‘jQuery’ instead, but we’ll use the shortcut.
    • (‘#archives ul’) – this tells jQuery what to target. Notice the code within the apostrophes is a standard CSS selector. jQuery supports up to CSS3 selectors.
    • .hide(); – is the method we’re calling.

    So, now we have the list within the Archives hidden. Next we want to show that the Archives are clickable. We could do this with a +/- icon before or after the heading Archives, or we could make the mouse become a hand when it hovers over it (the same way it changes when it hovers over a link). We’ve got two options with this. The first is to set it in the CSS, the second is to add it using jQuery. I would suggest to use the jQuery method, so that it doesn’t happen for your non JavaScript users, otherwise they may wonder why they’re clicking on a header that doesn’t do anything! 😉

    To do this we use the css() method to add in the code, and insert it after the previous command on a new line.

    [sourcecode language=”html”]$(‘#archives’).css(“cursor”,”pointer”);[/sourcecode]

    Then we need the final command, to use the trigger to show and hide the list. To do this we’re using the click() and toggle() methods. First off we use the click() method to capture when our trigger has been clicked, then the toggle() method effectively toggles between show() and hide(), and will show if the target is hidden, or hide if the target is showing. We can achieve this with the following code

    [sourcecode language=”html”]$(‘#archives’).click(function() {
    $(‘#archives ul’).toggle();

    The Final Code

    So to put all of this jQuery code together, we have the following code:

    <script type="text/javascript">
    jQuery(document).ready(function($) {
    $('#archives ul').hide();
    $('#archives').click(function() {
    $('#archives ul').toggle();

    You can use this on anything on the web page, so you could have your categories, search box, archives, links and comment form hidden at first, and use a toggle to show and hide these when a specific target for each is clicked. The above code would need to be duplicated for each show/hide section you want on your page, however we can reduce the code down a bit for the first two commands by adding the selectors into a comma separated list, the same as how CSS can be coded eg.

    [sourcecode language=”html”]$(‘#archives ul, #search form, #comments div’).hide();[/sourcecode]

    The show/hide/toggle methods are so useful in hiding off some aspects of your page so that the design can still be kept quite simple and non-overwhelming, yet you can still keep everything on the page that you want on it. Next week I’ll explain how we can improve on this to have a more graceful show and hide of the targets.


    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.

    • 8
    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!

    • 3
    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

    • 1
    Continue Reading