Junaid Bhura a web developer in Melbourne, Australia - specializing in WordPress development.

Category: WordPress


WordPress Plugin authors: Please use the platform’s patterns

An appeal to WordPress plugin authors to use platform patterns and avoid passing on their complexity on to their consumers.

Continue reading »

I contributed to WordPress 6.5

I contributed to adding the lastmod tag to sitemaps on WordPress!

Continue reading »

Performant HTML manipulation in WordPress 6.2

WordPress 6.2 quietly shipped with an update that will have a significant impact on our ability to work with markup: The WP_HTML_Tag_Processor class!

Continue reading »

Exceptions in WordPress: About time?

Is it about time the ability to create Exceptions became available in WordPress core? If so, what could it look like?

Continue reading »

Turn off WordPress 6 block layout classes and styles

I actually can’t believe this feature was shipped in WordPress core. To be fair, it is marked as “experimental”. But I’ve encountered problems on a couple of sites already.

Continue reading »

I contributed to WordPress 5.9!

This was my second contribution to WordPress core. Well, technically my ticket was 5 years old but better late than never!

Continue reading »

Why custom Gutenberg blocks belong in themes, not plugins

Let me start off by prefacing that this blog post is specifically about custom blocks developed for completely custom designed websites. Not blocks built for general-purpose, third-party or off-the-shelf use, which obviously belong in plugins, since they can be distributed and consumed as such. This post is aimed at developers who build custom block-based WordPress […]

Continue reading »

PHP Web Components for WordPress

Update: See the concepts in this article used in a project structure: https://github.com/junaidbhura/wp-project-base The state of web components Modern front-end web development encourages breaking up of designs into reusable, repeatable and unique components. A component is a piece of markup capable of holding – but is separate from – content within it. The Web Components […]

Continue reading »

I contributed to WordPress 5.6!

I was one of the contributors for the WordPress 5.6 release. This was the first core release I was part of. I now get a shiny “Core Contributor” badge on my WordPress profile! Special thanks to Peter Wilson for taking a look at my ticket!

Continue reading »

How to extend blocks in the Gutenberg editor on WordPress

Important: This post assumes that you already know how to work with JavaScript ES6 and have some experience in working with and setting up custom blocks on WordPress using Webpack. Gutenberg Blocks With the introduction of WordPress 5, we now have a new powerful tool at our disposal: Blocks. Blocks let us build custom experiences […]

Continue reading »

Using Composer to manage WordPress dependencies

Package managers help managing dependencies in a project, and have become indispensable tools in modern web development. Mature languages have their own package managers, and PHP is no exception with Composer. Developers complain about how WordPress lags behind in this regard – with a lack of an official way of working with Composer. But what […]

Continue reading »

WordPress + Cloudinary = Dynamic, optimized, on-the-fly images!

Bringing Cloudinary to WordPress People have tried to bring Cloudinary to WordPress, and have really complicated the whole thing. The official Cloudinary plugin, in my opinion, is really clunky and in the way in most cases. Other solutions follow the same route, and are just too complicated. Since I wasn’t able to find a good […]

Continue reading »

I presented at a WordPress Meetup in Adelaide

I gave a presentation at WordPress Adelaide today about custom permalinks in WordPress: https://www.meetup.com/en-AU/WordPress-Adelaide/events/hfllbnywlblb/ This was my first big presentation in Australia, so big thanks to Alex and the other organisers – and Frame Creative for letting us use your space!

Continue reading »

WordPress Admin: How to Fix the “Fatal Error: Allowed Memory Size…” Error

The Problem If you’ve been working on a complex WordPress site with a lot of custom fields, perhaps with the Advanced Custom Fields (ACF) plugin – chances are you’ve come across this error when you try to access your post type in the WordPress admin: “Fatal error: Allowed memory size of xxx bytes exhausted (tried […]

Continue reading »

WordPress: How to create image sizes dynamically on the fly

WordPress is awesome. But like any system, it’s not great at everything. One of those things is media image size management, where it just doesn’t work well. The Problems: WordPress uses something called “Thumbnail Image Sizes” to maintain different versions of your images in different image sizes. You define these image sizes under Settings -> […]

Continue reading »