Category: Web Development

Chrome 58: ERR_CERT_COMMON_NAME_INVALID

Evidently, Google has an axe to grind, as you may now get the ERR_CERT_COMMON_NAME_INVALID page any and every time you try to load a page or click a link on a locally-developed site that forces SSL. This is how I (sort of) "fixed" it.

Category: Web Development

Adding to Chrome’s Emulated Devices

Chrome let's you add new emulated mobile devices by opening the Developer Tools pane (View > Developer > Developer Tools), going to Settings (F1) then Devices and clicking the Add custom device button. In this post, I will list some modern devices that you can add such as iPhone 7 and the Samsung Galaxy S7/S8+.

Category: Web Development

WordPress: “HTTP Loopback Connections Disabled”

You get a WordPress error that says, "HTTP Loopback Connections Disabled."

It took me awhile to figure this one out. I was getting it on a BuddyPress install (and other have reported seeing it with BackupBuddy, among others).

Most of the web sites had pointless or ineffective solutions. Some said to add define('ALTERNATE_WP_CRON', true); to wp-config.php, which was completely irrelevant, uneffective and annoying.

This is what worked for me.

Category: Web Development

Snippet: Disable WordPress Enqueued Script Caching

This code snippet will show you how you can disable caching of enqueued scripts in WordPress in your development/staging environment(s) but not in your production environment.

Add Environment Variable

  1. Edit the wp-config.php for each of your instances.
  2. Add the following (if it doesn’t already exist):

(replace ‘development’ with whatever label you want for each environment, such as ‘staging’, ‘production’, etc.)

Add/Modify Code to Enqueue Your Custom Scripts

We’re now going to tell our enqueued scripts to either:

  • If WP_ENV is ‘production’, when append the theme version to the script.
  • If WP_ENV is anything else (like ‘development’ or ‘staging’), append a timestamp to the script link.

Category: Web Development

Carbon Fields

 
It is rare that I find a plugin/framework that gets me so excited. One of these days I will have to publish a list of my favorites. Today I am here to talk about Carbon Fields for WordPress.

Let me begin by saying that Advanced Custom Fields Pro is one of my favorite plugins, and I probably use it more than any other (maybe on par with Redis Object Cache). I have a developer’s license for it. It is amazing and also a bargain! I wish that I could use it for everything!

That said, some of the things that make ACF Pro amazing, like Repeater field and Options pages, are not redistributable for free (as in beer) plugins. I totally understand and respect why – I would do the same thing. However, there are times when I make a plugin that I just want to give …

Category: Web Development

Comparison: AWS, DigitalOcean, Vultr & Linode

Over the years, I have used several dedicated and cloud hosting companies. I thought that I would share my opinions on them (as far as the features that I’ve used among them).

Although I have tried Microsoft Azure and the Google Cloud Platform, I preferred the interface of AWS and/or the price of other options, so I did not give them much of a trial. As a result, they will not be included much in this article. I also do not have a DevOps background so I will not be discussing HA or load balancing a lot.

Amazon Web Services (AWS)

I used to be a die-hard promoter of AWS (I still use them for some of their specialty services, and recommend them depending on infrastructure needs).

Pros:

  • Speed – I have always gotten impressive transfer speeds while using Amazon’s

Category: Web Development

A Comprehensive SSL/TLS Guide

I’ve seen a lot of sites that don’t use HTTPS by default. I’ve heard the argument, “We don’t need it. We’re not e-commerce.” This is absurd thinking:

  1. You are probably using some sort of CMS product, possible a popular one like WordPress, Magento, Joomla, etc.
  2. There is a good chance that you are not keeping them as updated as you should, but for arguments sake, let’s assume that you are (or pretend to be).
  3. All of these products have default administrative login paths. If you monitor your logs, you will notice that bots from all over the world are hitting this default path constantly.

Read more: Why HTTPS? Here Are the 5 Reasons Folks

Note: If you are using WordPress, consider forcing HTTPS using the WP Force SSL plugin or modifying your wp-config.php.
WP Engine Managed WordPress Hosting

Step 1: Change your default admin path!

If you are on WordPress, there are several …

Category: Web Development

Bootstrap 4 – Grid Only

This situation happens to me all the time. I'm working on a client web site, making updates or content changes, but the site is not responsive and/or wasn't built with any sort of CSS framework. I also encounter this problem when trying to throw together pages for the WordPress admin. I could do the work manually, but I've become spoiled by grids.

If I include the regular Bootstrap distribution, I have the problem of it changing style and typography. That won't work. I could use a different, grid-only framework, but I have become used to Bootstrap conventions.

To solve this problem, I simply compile the Bootstrap SASS files, including only the grid and responsive utilities modules. To avoid potential conflicts with other CSS, I use a wrapper (in this case, .bootstrap-wrapper). Now, I can simply include the CSS file in the project and use the syntax that I am so accustomed to.

Category: Web Development

Installing Node.js, Nginx, PHP 5.6 & MongoDB on an Amazon Linux AMI EC2 Instance

This guide gives step-by-step instructions for installing Node.js, Nginx, PHP 5.6 and MongoDB on an Amazon EC2 instance. If you notice any errors, changes or have suggestions for alternatives/clarifications, please let me know.

This guide assumes that you are familiar with Amazon Web Services and using the Linux command line. This guide also assumes that you are performing these tasks on a fresh Amazon Linux AMI instance.