Currently browsing Blog
Our blog deals with page speed optimization, page loading, web performance, WordPress tutorials, PHP code wrangling, JavaScript tutorials and code snippets. Our web insights series allow designers and developers to discover the latest and most significant stories on the web, while sipping a hot coffee.
SpeedFactor Update: Less is More
The past few weeks have brought some long awaited updates to SpeedFactor. As I am focusing on tracking speed, some…
How to Create a Fixed Teaser Block in WordPress
This tutorial will show you how to create a collapsible fixed pop-up. It can contain subscriptions forms, contact forms, calls…
How to Create Smaller Buttons for the Block Editor (Gutenberg)
One of the shortcomings of the WordPress default button blocks is the size variation. There is none. Sometimes the buttons…
WordPress or Amazon? The Hard Choice for Beginner Sellers
When you are starting your own eCommerce business, there are many choices to make, and each one can determine your…
How to Improve Your Mobile Core Web Vitals: Quick Tip
Do you really need those fancy fonts on mobile devices? No? There’s your answer! This applies to any WordPress theme,…
On/Off Toggle Replacement for WordPress Checkboxes
When it comes to WordPress settings and admin panels, I’ve always been a fan of minimalism and default/native styling. I…
My WordPress Plugins – A Short History
Over the course of my 20 years as a PHP developer, I have developed many WordPress plugins. I don’t have…
How to add a date/time picker to Gravity Forms
Here’s a nice challenge I got the other day regarding a better date/time picker for Gravity Forms. When I say…
How to Create Your Own Image Optimization Plugin by Leveraging Jetpack’s Photon
This is a quick code tutorial detailing how to leverage Jetpack’s Photon for custom images. Not all images in your…
How to Create Your Own Website Screenshot Service by Leveraging WordPress’ mShots API Service
This is an example-based tutorial where you will learn how to create a custom post type called Site, add a…
17 Best Website Speed And Performance Testing Tools
50% of people expect a site to load in less than 2 seconds! Your site’s load time could be the…
YouTube Playlist Player, Core Web Vitals & Website Performance
My YouTube Playlist Player plugin got an update today and it speeds things up considerably. 1. First of all, I…
Instant Loading in WordPress Lighthouse Plugin
If you’ve read my thoughts on instant page loading in WordPress, and are wondering which solution to go with, note…
How to Submit a Patch to WordPress Core Using TortoiseSVN and Windows 10 (for beginners)
Here’s my steps to submit a patch to WordPress code. The whole process of editing WordPress core and submitting a…
How to Detect Multiple Matterport URLs and Embed Them Automatically
Embedding a Matterport tour in a WordPress page proves to be a bit problematic using the regular link-to-oEmbed method. There’s…
The Ultimate Post-Launch Checklist for Your New WordPress Website
This article is a follow-up of our previous pre-launch checklist article. You will learn how to make your new WordPress…
The Ultimate Pre-Launch Pre-Flight Checklist for Your New WordPress Website
This article is split into 2 parts, and we’ll assume you’re launching anything but a blog. You will learn how…
I Fixed Font Awesome JavaScript Logo
The JavaScript logo colours are yellow (#f7df1e) and black (#000000). Font Awesome SVG Icon The problem with the Font Awesome JavaScript logo is…
Accessible Multiselect Dropdown
Sometimes you need to turn a multiple dropdown into a multiple checkbox selector. No other bells and whistles, no search,…
How to Use IntersectionObserver to Mark Current Scroll Progress
Let’s say you have a list of anchors, or a table of contents, and this list is fixed on screen.…
Thin UI: My Opinionated, Lightweight UI Framework
Thin UI Not your average UI framework, but a minimalist, one-size-does-not-fit-all, lightweight, responsive, modern, opinionated, Flex-based framework. I’ve been building,…
Auto Paragraph Function with URL Parsing and Smilie Detection
This function emulates WordPress wpautop() function for custom PHP scripts, parses URL addresses and adds smilies/emoticons. If you’re coding your…
WordPress “Plugin Manager” Hack
Here’s another hack that targets WordPress admin users using brute force password cracking. In other words, if your WordPress administration…
WordPress WSO Web Shell Hack
I have recently found a nasty hack inside one of my clients’ sites, based on WordPress. Turned out that the…
Google reCAPTCHA v3 using PHP, AJAX and WordPress
After having issues with Google reCAPTCHA v2 and a custom WordPress implementation, I started coding an optimized version using the…
11 Places to Find Beautiful Free Illustrations
2020 saw the rise of this trend with countless sites, SaaS websites, startup websites and design sites adding illustrations to…
How to update your BreadcrumbList schema
If you're getting warnings when checking for breadcrumbs rich results or via your Google Search Console, here's what you need…
How I Planned, Blocked Out and Built a SaaS from Scratch Using WordPress
This is the story of SpeedFactor, a speed and performance tracking SaaS. At its core, the app measures a bunch…
Thin UI Update: Pure CSS Popover to Replace JavaScript One
I had some nice popovers coded for SpeedFactor, but I wasn't happy with the performance, especially for a single element…
Google Lighthouse 6 Performance Score Weighting: A Complete Guide
Google Lighthouse 6 just landed and it measures eight performance-related metrics in the Performance Section of the report with the…
An Extreme Approach to Speeding Up WordPress
This tutorial applies to a specific use case: WordPress as a minimal CMS, highly optimized for SEO.
How to Generate Quality Leads From Facebook
This is a guest post from 4Property, a leading provider of technology and market intelligence services for estate agents and…
Google Pagespeed Insights vs GTmetrix vs SpeedFactor: Which One Is Better?
Google Pagespeed Insights, GTmetrix and SpeedFactor are all great tools to help identify speed related issues and fix them. All…
How to Optimize WordPress’ Native Settings for Performance
WordPress comes with default settings and options, suitable for blogging. Part of the “Decisions, not options” philosophy, they might not…
How To Update Your WordPress Plugin From GitHub in 2020
I have coded three of these before, but I have finally coded and optimized the perfect one. A GitHub plugin…
How to Upgrade Your GitHub API Authentication
GitHub deprecated authentication via URL query parameters back in 2020, and developers who still rely on the access_token query string…
How to Work Remotely: Practical Tips
😎 These tips are obviously biased and focused on developers. Home Office Designate a room as your office. This helps…
How Not to Get Affected by Google Algorithm Updates
It’s common sense. I’ve heard a lot of complaining from SEOs who have sites that have plummeted over the past…
How Many Assets Should a Website Have?
How Many JavaScript Files Should a Website Have? A maximum of four. And I would still argue that is too…
Why Is Web Page Size Important?
As of 2021, web page size is the most important factor to measure, as the bigger a page is, the…
Plugins Slow Down Your WordPress Site
“There’s a plugin for that” is a long-time notion in the global WordPress community. It’s a very positive example of…
10 PHP functions and code snippets to work with dates
Get current time, formatted This is a super basic function, takes no parameters and returns the current date. Format a…
How to Improve DNS Lookup Time
There are two major issues when it comes to DNS lookup times: 1. Number of external requests A complex website…
Estimated Reading Time in Web Design
Users don’t read (more than 18%) About 11 years ago, Jakob Nielsen wrote an “Alertbox” titled How little do users read?.…
Why Growth Hacking? How Product and Marketing are Directly Correlated
This is a guest post by Casey Armstrong. It’s 7am. You roll over and grab your phone to start checking on…
How do you struggle with blog growth?
Hundreds of thousands of blogs are on the internet now, and most likely there are many in your own industry,…
17 Tips for Emailing a Cold List Without People Hating You
OK, so you have this large, “targeted” email list. So you say to yourself: “Self, I’ve got this list of…
How do you identify trustworthy businesses/clients to work with?
Primarily as a freelancer or contractor, what criteria do you have for identifying trustworthy companies to work with? For instance,…