The Caveena Solutions Blog

I consider myself a craftsman in that I dedicate myself to my work. I’m probably a few steps short of a perfectionist (though that terms has been applied to me in the past) and while I may not know best any newfangled idea or technique must convince me of its value before I’ll give it a second look. I pride myself in creating the best work I am capable of.

But reality does not always give me the luxury of doing so. While a craftsman would prefer having ample time and resources to work on their projects, the real world cannot always accommodate this. In most cases it’s “now or preferably yesterday!”

Read more »

So I doubt I was the only one who got hit by this issue. Basically everything was fine in cPanel land until one day I was randomly getting logged out of cPanel (sometimes immediately after I’d logged in, other times after a few minutes). When I did manage to log in the cPanel interface appeared broken with missing images and occasionally missing stylesheets. In some cases I’d be blocked from even loading the login page. It wasn’t an isolated incident either as this problem cropped up on different hosting services.

Understandably frustrating when you rely on cPanel to configure your hosting.

Read more »

Although there is no bulletproof way to stop people downloading images on your website I still get this request every now and again. If you really want to protect your images don’t upload them at all but if you must you can “protect” them by including a watermark in the center or uploading a low resolution copy. A popular, if somewhat notorious, method is to disable right-clicks on the website but I do not encourage this because it confounds what the user expects of the browser. It also does not prevent people from digging the image out from their browser cache.

But while I was in the shower this morning I had a silly, if naughty, idea to “protect” an image with nothing but HTML and CSS. Here’s the codepen:

Read more »

So we noticed that the backup procedure on one of our client’s websites wasn’t completing properly. It’s a good thing we’ve got a backup for our backup.

Read more »

One particular morning, as I was eating my breakfast of oatmeal and almond milk, I realized I had forgotten to bring my iPad with me. Deprived of morning entertainment, I picked up the box of almond milk and started reading the label (yes kids, that’s what we did to entertain ourselves before tablets and smart phones). Something on the box caught my eye — proudly displayed on the side was a bold, star-burst proclamation that the almond milk in my hands was made with 98% Australian ingredients.

So that got me thinking: What would a 100% Bruneian Website look like?

Read more »

Did you know you can disable Jetpack’s Downtime Monitoring module using the ever-so-useful WP-CLI? Perhaps you’re doing some routine Website Maintenance and don’t want to be barraged by emails alerting you to the planned website downtime (and if you’re the type to never do maintenance on your website, you really should think about starting).

As divisive as the Jetpack WordPress plugin is, the Downtime Monitoring module is an easy, free way to be alerted when your WordPress website goes down. The problem is that Jetpack has been very indecisive about how to allow users to disable the Downtime Monitoring module.

You can disable the Jetpack Downtime Monitoring module from the WordPress Administration. Sometimes…

Currently you can toggle it from your WordPress Admin but previous versions redirected you to the linked WordPress.com account where, in my experience anyway, it failed more often than not. So if you’ve been having trouble disabling the Downtime Monitor and if you happen to have WP-CLI installed (why wouldn’t you?), you can use this nifty command:

wp jetpack module deactivate monitor

Simple, isn’t it? Just don’t forget to turn it back on when you’re done!

Sometimes all you need is a simple plugin to add custom CSS to WordPress websites. Heaven knows there’s no lack of them in the WordPress repository.

I prefer to keep all CSS in the theme’s folder but sometimes I need to add some custom CSS on-the-fly without having to go through the trouble of updating the actual theme code. Maybe the client has reported a visual anomaly or I spotted something off while browsing their website. Either way, it’s much easier to log into the WordPress admin and add the CSS code. Migrating it to the theme can be done at a properly scheduled time.

Read more »

Every so often something new is introduced designed to make things easier. But sometimes it also accidentally making things a bit harder. This is one of those times.

cPanel v58 introduced AutoSSL which automatically installs and renews SSL Certificates. All websites can use a Domain Validated SSL Certificate but AutoSSL can also be used to work with Let’s Encrypt. As a quick primer, SSL certificates allow a website to encrypt the communication between the web host and website visitors which is particularly important when you’re sending sensitive information like passwords and Credit Card details. Google also appears to be moving in the direction of recommending websites that use SSL. So if your webhost is using cPanel they can easily offer automated SSL Certificates to all their customers costing them practically nothing.

Great, right? Well, if you’re using a Content Distribution Network (CDN) or third-party Website Firewall, things may not be so great.

Read more »

We were doing routine maintenance on a client’s WordPress website when we noticed that they’d installed a plugin. Installing plugins is something we don’t normally encourage (or even allow) our clients to do but there are of course exceptions to the rule. We wanted to learn more about the plugin so we could determine if it could safely be removed and to cut a long story short we ended up going through the code itself only to find the plugin displays, without permission, a hyperlink to an external website. This was ad injection.

Read more »

Caveena Solutions would like to offer our heartiest congratulations to the Brunei Amateur Dramatic Society (BADS) for successfully putting on 3 shows of “Mystery at Bagshot Manor” aka “Murdered to Death”! You have all put in so much work and it paid off. Thank you for the opportunity to support creativity in Brunei and the local performing arts scene.

At first glance, it may seem a stage play has little to do with building websites but creativity can be expressed in any field. More importantly it is vital we all continue to deliberately exercise that creativity in order to develop our capacity for it whether our field is programming, visual design or stage performance.