How to Change Page Title Using JavaScript

This JavaScript will modify the text of the browser tab when a visitor focuses or unfocuses the tab. You can…

How to Populate OpenStreetMap with Foursquare Venues/Amenities

First of all, we need a Foursquare app and a client ID and secret. Head over to developer.foursquare.com and get…

WordPress Responseless XHR Request Using JavaScript

A responseless XHR (POST) request is a request which does not require any user feedback, such as storing post views…

Tiny WordPress

Tiny WordPress – tinywp.php – is a quick (but not dirty) PHP script which auto-installs WordPress on any host. Just…

How to track and measure phone number views with JavaScript

Use this tutorial to create phone number links and track/measure views. As phone numbers are clickable (and work) only on…

How to show an outdated browser alert on Internet Explorer 11

Here’s a nice overview on why Internet Explorer 11 should be phased out and users blocked from viewing the site…

Native JavaScript hasClass()

These JavaScript snippets implement a native hasClass() function, which checks if an element has a certain class. A prototype approach…

How to extract a value from an element and, optionally, round it

This JavaScript snippet will extract a price from a DOM element, remove all alphanumeric characters, such as currency or symbols…

How to hide an element using JavaScript

Here are 3 methods to hide an element using JavaScript. How to hide an element using JavaScript? Set native display…

End of an Era: Travel SEO

I’ll just leave this here for reference purposes and I won’t explain any code, as it’s obsolete and I’m not…

How to Migrate bbPress to Mingle Forum

I’ve recently taken over a WordPress website, having a combination of bbPress and BuddyPress. Not my cup of tea, although…

How to Create a Programmatic JavaScript Tooltip

Here’s a short tutorial on how to create a programmatic JavaScript tooltip. I needed this feature to recreate a product…

How to create a YouTube video cover using the YouTube Iframe API

There’s an increasing trend of adding full-width (possibly full-height) YouTube video covers with autoplay. Using the YouTube Iframe API, this…

How to Get and Set URL Parameters with JavaScript

This is an old script, which helped a lot with the initial phase launching a project on all browsers and…

Convert Hex2RGBA For Your CSS Selectors

I’ll just leave this here. It’s an old piece of code I used for a theme, where users selected a…

How to Code the Ultimate Landing Page For SEO and Conversions

🐻 Bear with me. I know it sounds like link bait, but it’s not. It’s true. I’ll prove it with…

Google AI – Making Google Think You Have the Best Site

I was having a conversation with a colleague the other day about how Google ranks a site. His idea was…

From Web Development to Growth Hacking

I pivoted. I stopped doing freelance web development and started focusing on an older side project of mine, growth hacking…

Deconstructing Neil Patel’s WordPress SEO Article

I’ve recently had an article from Neil Patel land in my inbox. The title was link-baity enough to make me…

How to post to Slack using a third-party script

Or Google Tag Manager, whichever is handier. Here’s a short snippet of code I used to use to notify my…

How to Install WordPress Plugin Dependencies

This is a lightweight alternative to TGM Plugin Activation class, which is currently the best way to require and recommend…

9 Innovative Ways to Improve Your Product Photos

If you want to examine an online product, you can’t just pick it up off the shelf. On top of…

11 Navigation Tips for Smoother Sailing on Your Site

There’s no limit to how good your navigation can be — there’s no risk to it being too comprehensive, too…

Why SEOs Need to Stop Saturating the Web with Content

Ever since I started working in the SEO/SEM industry, the mantra I would say I have heard the most is…

How and Why I Removed IE11 Support From Our Product

Developing a product from scratch takes a lot of compatibility code, code maintenance, cross-browser testing and user testing. Building a…

West Cork Dream Properties

I have recently finished the third iteration of West Cork’s estate agents and valuers site for Charles McCarthy. After almost…

The Journey to PHP 7

I have updated my free WordPress plugins to PHP 7+ and removed support for anything lower than that. I decided…

About WordPress Forks, b2, b3 and Future Projects

A lightweight CMS, based on WordPress pre-5.0, with no bloated code, no external resources, no extra JavaScript libraries, no JavaScript…

How to Build a Vanilla JavaScript Slider in Less Than 100 Lines

This quick tutorial will show you how to create a basic slider in less than 100 lines. The actual JavaScript…

Product Sans

What is Product Sans? The new Google logo and identity system was developed by creating a custom, geometric sans serif…

How to Build an Awesome Pricing Table/Matrix Using HTML/CSS

Here’s a quick sample of an awesome pricing table/matrix I built aĀ while ago for a service that’s no longer live.…

How to Implement a Service Worker in Your Website and How to Create a Basic PWA

You definitely don’t need a plugin for this. Although there are plugins which help with creating a service worker and…

A Trio of Approachable Vanilla JS Sliders

This post has been superseded by How to Build a Vanilla JavaScript Slider in Less Than 100 Lines. The past…

Cross-browser Query Parameter Getter and Setter

Here’s a cross-browser compatible way of getting query parameter from a URL or setting query parameters and reloading the page. An…

How to Autoplay a Video Element Using JavaScript

The latest Chrome version has stopped video autoplay if the video is not muted. Firefox and the other browsers will soon…

Do You Really Need Wordfence (Apache Edition)

Nope! What you need is an up-to-dateĀ WordPress, up-to-date plugins, the latest server software, a bit of common sense and a…

Cache & Compress Your WordPress Site Without a Plugin

WordPress caching and compression is mostly common sense. If you have a powerful caching solution on your server, and you…

How to Code an Assistance Request Plugin for WordPress

Internal, client-oriented plugins are mostly used by maintenance agencies. They supply a plugin to their clients, allowing them to submit…

Cross-browser CSS object-fit

June 2021: I have updated the CSS rules to remove IE11 support. My latest project required a cross-browser cover video.…

2018 Blog Awards Ireland

Guess what? getButterfly is a finalist for the 2018 Blog Awards Ireland in theĀ Business Blog > Digital & Tech category.…

Native JavaScript Drag&Drop Upload

Modern browsers allow you to define native dragging & dropping functionality with a graceful degradation for older/ancient browsers, such as…

Passing Arguments to External JavaScript Files

This post covers the topic of passing arguments to external JavaScript files. I want to say up front that there…

JavaScript Data Types

Every variable in JavaScript has a data type which dictates the values that can be stored in it. However, JavaScript…

Building a Simple Tab Strip using Vanilla JavaScript

I recently developed a simple tab strip using only HTML, CSS, and vanilla JavaScript. The script does not require any…

Convert jQuery.get() to Vanilla JavaScript

In the latest iteration of my YouTube Playlist Player plugin, I decided to remove all jQuery dependencies. I replaced the…

ASP.NET Header Cleanup, HSTS Implementation and Browser Security

Here's how to improve the security of an ASP.NET powered web site, with no access to the underlying code (controllers…

How to Compare Version Numbers in JavaScript

The basic idea to make this comparison would be to get arrays of parts from the version numbers, and thenĀ compareĀ pairs…

DOM ready functionality using vanilla JavaScript

This is a reliable way of checking for DOM ready. The first version uses a procedural function, while the second…

Page 7/9123456789