Over the past year we have seen some fantastic growth and some huge changes in the world of WordPress.
WordPress and Divi Development Changes in 2018
With the new Front End and React libraries the Divi Builder itself has seen its biggest year of changes. This is fantastic news for most of the users.
Yes, I will personally mourn the loss of the back-end editor. The block style of editing is simply evolutionary and I think it was a big inspiration for block editing and the big changes that have come to WordPress. The front end editor is now going to be the default so that means a lot of work for us at Divi Framework making all our plugins work really well in this new world.
With WordPress 5.0 we have Gutenberg. Some of us love it, some hate it and the rest are in between.
What our Members Told Us
As many of you know, as you become a free member on Divi Framework you end up filling out a form where we ask what is the most important to you as a user.
Do you want Plugins, Themes or Learning?
We did some statistics on the feedback and the results are very interesting:
97% want plugins
97% of those that made the choice to enter data in that part of our form said they were interested in Plugins. This means Plugins will remain our focus at Divi Framework.
56% want learning materials
56% of you indicated you would like more learning materials. As many of you would have seen our learning materials are continuing to improve and we hope to be the best free and paid resource for Divi WordPress users and Developers by the end of 2019.
49% want Themes.
49% of you are interested in Themes. We are going to spend less time on Child Themes than other areas however what we will be doing is creating child theme examples with plugin and learning combined. This should help all of us become better users of Divi and WordPress.
Our focus in 2019
At Divi Framework our focus is 3 things.
Plugins – we want all our plugins to be first class citizens with Divi Builder Frontend.
Learning – Lots of Videos and New learning materials are to be released.
We will of course continue to be agile but the main thing for us is continuing to help WordPress users see Divi Builder as a framework of tools to make great websites.
We have our standard installation protocols and setups that help us maintain and grow our WordPress clients year on year.
We want to help every member, Free and Paid do the same thing in 2019. The internet is huge and growing faster every year. I think that we can change the internet one website at a time and help every organisation look fantastic using WordPress and Divi.
A new year brings new Hope
As the New year arrives we all set goals to grow and do more. As a result of that I thought how can I help our members best at this time of year.
I realised that was simple, make it easier to join Divi Framework.
So for the first 7 days of the year we have a sale on for all of you.
Enter the code my2019deal on checkout to save 70% on any plan.
Happy New Year and we look forward to an amazing year for Divi Framework and WordPress in 2019.
The switch to Devil Box for Local WordPress Development
As some of you may know, WordPress developers often use a local environment to test and build a WordPress site.
Not only does this save time, it also saves money because you don’t need a hosting account.
This does however bring with it a few problems.
The move from Mac to Windows
I recently migrated from Mac to Windows. The main reason, I just don’t feel like I get value from Apple anymore. The Macbook Pro with 32gb ram and decent storage is an ridiculous amount for what it is. With more PCs having a nice form factor and good battery life, I made the switch.
This came with a couple of problems. My beloved Screenflow doesn’t work and Terminal, the place all real coders like to live, was taken from me.
Terminal is that black screen with green text you see hackers using in the movies. Its my happy place and with the move to windows I no longer had this wonderful tool.
Windows has alternatives, but its still took a bit of getting used to.
I also had been using Laravel Valet for my Laravel projects and often used local development directly on my MAC using MAMP. With MAMP working in sync with my terminal in Mac I was able to use Composer, GIT and one of my favourite tools, WP CLI.
With the installation of Local from Flywheel I got a fair few of my issue resolved for WordPress development, for Laravel however it was not that great.
I missed Redis and the ability to install Maria DB or Postgres in Local from Flywheel.
Installing it on windows was tricky. It was not that clear I was missing things when I started.
If you want to install Devil Box on Windows make sure you have the following installed before starting,
1. Windows Professional. You need the Hyper V tools that come with Windows for Docker to work its magic. 2. A Docker Installation – its free so that was no problem. 3. I also need GIT Bash – Again its free and I already had it setup.
After that, a simple setup of Devilbox now has me with a fantastic environment for developing WordPress extensions and Laravel in the one place.
The Domain management is easy enough and I have to recommend it as the best solution I have found thus far.
I will make a few more in depth tutorials in 2019 for the whole Divi Community and I’m sure you guys will enjoy this solution. Its flexible and allows you to do more than the other solutions I have found.
If your interested in Local WordPress Development be sure to become a free member and enjoy the new tutorials.
How to add Instagram to Divi Header
The Problem – How to add Instagram to Divi
Instagram is a photo and video sharing social network. Like Facebook, it’s audience is both individuals and businesses. Due to it’s large audience, businesses use it as branding and customer acquisition tool. Because of the growth of Instagram it is important to add Instagram to Divi.
Often, we get requests by our clients that they would like to show Instagram profiles on their website. As you know we use the divi theme to build client websites.
Divi has a top header where you can showcase your client’s social media profiles. There’s a problem. Divi comes with a limited 4 social icons for your header and footer. They are
You can toggle and set social profile urls at WordPress Admin → Divi → Theme Options
There’s no easy way to add more social icons like instagram unless you write lot of custom code in your child theme.
You will need to
Write code to toggle and set social profile urls for the new social icons. The settings need to be at WordPress Admin → Divi → Theme Options along with the default divi social icons.
You will need to add social icon image files and stylesheet to you child theme.
You will need to copy the social_icons.php file from includes folder in your Divi theme to your child theme.
Once copied, you will need to update the social_icons.php file to include your new social icons.
That’s a lot of work for a single website.
Depending on the business profile of your clients, they might need social profiles other than instagram. A client with a hotel might need a Trip Advisor profile. In essence, it’s highly possible that you will have to redo this for every website.
The Solution – Divi Icon Toolkit Plugin. A Free Plugin
I will make the following promise to you upfront.
You don’t have to write code to show social profile options in your WordPress admin.
You don’t have to worry about fetching the social icon images and stylesheet.
You don’t have to copy the includes/social_icons.php file from the Divi theme to your child theme.
It integrates with Font Awesome Brand Icons. This gives you access to over 370+ icons. Yes, it has your Instagram icon tool.
We’ve added out-of-the-box support for 19 social icons including instagram. They are Instagram, YouTube, Pinterest, Linked In, Skype, Flickr, Dribble, Vimeo, 500px, Behance, Github, Bit Bucket, Deviant Art, Medium, Meetup, Slack, Snap Chat, Trip Advisor and Twitch
Question: What If I Want To Use Other Font Awesome Brand Icons? Say Amazon?
You can use a filterdf_update_social_icons to update the social icon list. A child theme is a good location to write this filter.
Adding custom social icons for Divi header and footer is a repetitive and time consuming process. This plugin takes the pain out of this process and adds integration with fontawesome brand icons. You save at least 1+ hour per website using this plugin.
We have heaps of sites using Divi custom post types. We have all sorts of single post pages and css that helps us do that and the thought of less custom code made me happy.
The update meant, in theory at least, we can dump a bunch of custom code and depend on Default Divi for solutions with custom post types. The theory is unfortunately not that practical.
A Flaw in the implementation of Divi Custom Post Type CSS
Unfortunately, when we updated to version 3.11.1 we found a minor disaster had occurred. The team at elegant themes had generated a gem of a style sheet filled with important statements and other wonderful gifts of poor css. This is injected by default on all of our custom post type pages. I was far from impressed and started to hunt around on what to do.
I looked at first trying to find out why I had so much funk in my pages. All new css rules and weird padding was making my head spin and then I identified a simple solution. Either role back or remove this style sheet.
The good thing is this style sheet is linked to a single action and that can be easily updated.
The new Action for Divi Custom Post Type CSS
In the Divi Theme a new custom post type hook was added with an action to link some css. This is a completely new style sheet taking the best and worst of the existing Divi Stylesheet with some additional sugar to “help” with your custom post types.
Unfortunately for me, it turned my pages into spaced our weird padding items so I had one simple solution, remove that style sheet.
Fortunately that is not to hard.
I placed the following gist in my child theme function file and everything was well in the world again.
If you are finding issues with this new Divi custom post type support, give this code a whirl and see if it helps you get some normal back into your sites.
How does this reflect on Elegant Themes?
The team at Elegant Themes are racing ahead on changes, and that is fantastic most of the time. However they don’t have a beta developer group. They also don’t have a way of testing new functions before the roll out of major updates. This means you need to keep a close eye on your updates and have a testing process. This was a critical step for the Divi Custom Post Type support feature.
We found that overall we need to be careful on all Divi updates. Often things break in a catastrophic way so be sure to get yourself a good support team on your commercial sites.
It would be great if Elegant Themes had a beta plugin that allowed new features to be enabled or disabled before being merged into the Divi Theme.
How did your site go with these updates? let us know in the comments.
WP Rocket is a premium cache tool and is one of my only choices for cache.
This is due to me using Kinsta as a host provider. They limit what I can and cant use for my cache.
Kinsta have a good cache tool already built in so that has never been a problem.
Recently Kinsta and WP Rocket worked together to bring the magic of using these two amazing services together for my Divi powered WordPress site.
It took me a while to configure the plugin so in this article I thought I would go over what I did and why I did it so you too can get some amazing results with your WP Rocket for Divi configuration.
The Installation of WP Rocket for Divi
To get start simply upload the plugin as you would any other. Once installed you active it and are taken to a configuration page.
Once you are on the dash board all I turned on was the sharing of analytics. I only turn this on for my personal sites that I own and am director for. If it is a client site I would suggest you get your clients permission before sharing this data.
On the left side of the WP Rocket panel is a menu and I simply worked my way down this menu from top to bottom.
In the cache area I have a very simple interface, which I like.
I’m not sure if this is more simple because of the integration with Kinsta Cache so if you get something else, it may be because you aren’t on Kinsta.
The first question is around having a separate cache for mobile devices. This is for those users who have a mobile specific theme. I don’t as I am using Divi which is responsive out of the box , so all I did was select that I want a mobile cache.
I then enable the cache for logged in users. We have a membership on this site so slowing down our logged in experience is a bad idea. If you don’t have a membership site you don’t need to turn this on.
The Cache lifespan is set to 10 hours, I left mine as that default. I may increase it in the future but we do updates regularly on our site and that means most days someone from the team edits content or code. If you are doing the same its probably a good idea to stick to the default.
This is also a good idea if you are doing daily plugin updates.
On any item you can go to the help section to get more information.
In the basic settings I turned everything on. I Minify my HTML, Combine my Google Fonts and remove query strings from resources. I would recommend to anyone that is using this to use the same settings.
When you minify your HTML to are basically reducing white space and not having all that space downloaded as file size. Yes, empty space in a file is not empty space.
Combine of Google fonts is another handy option as quite often you downloading a google font takes multiple requests and can be one of the biggest issues to slow down your site.
In the CSS files area I only select to minify the files. When using Kinsta hosting you have HTTP2. HTTP2 has all my files download at the same time so combining files is actually slower than having them separate. It wont help your page speed score but it will help your download speed.
I then turn on the option to optimise my CSS Delivery. At this point my site was running pretty fast. I have minified 2 big reasons for a slow site after your images. That is the HTML size and the CSS file size.
I turned everything on at first an my site broke. all my forms disappeared and my blog stopped working. That was a BIG problem.
What was the issue?
Basically the defer flag on loading was the problem as that was the last setting I had used.
Finally I disable WordPress embeds – I don’t use them so it was OK for me to turn this off. Keep in mind that if you use an embed, you may want to either reconsider why or not turn this on.
I do want to point out here that I use WP Smush for my image optimisation. If you want image optimisation on your site you wont get it from WP Rocket. You will need another tool. More than half of the page speed issues I help clients with is due to image optimisation so make sure you have that sorted to get the best results.
The preload interface for WP Rocket is really very technical. I was very interested in what it can do and how it could work.
After looking over it, i realised it was not really going to help me that much but it did have DNS Prefetch. DNS Prefetch is a really important way to get your pages loading faster.
I added my Google Tag Manager domain, and Google Font Domains. You can see the items in the below GIST.
At this point I was completed in my setup. I currently use WP Rocket for Divi and its giving us consistent load times under 1.4 seconds for the first page load.
The Advanced rules section was not required and the Database and CDN tools were also not required. I use WP CLI for my database management and cleaning out duties. These are managed by Cron Jobs so these are simply not needed on my site.
We are thinking of reviewing the CDN in the future but we have other areas of concern on the site right now that are more important than a CDN.
I have used a lot of the cache plugins. Our decision was based on 3 things,
Server Support – your server has a lot to do with your page speed success so using WP Rocket for Divi on Kinsta was a good step forward.
Our Plugins – I found Hummingbird to be excellent but it had no way of working with my VR Toolkit with its CDN cache. It also turned the cache on by itself and broke the page so that was removed.
Plugin Support – I have used free options before but wanted a premium solution. w3 total cache and Auto Optimise were good but didnt really hit the spot for our requirements.
WP Rocket for Divi is a great combination. With this plugin we also have a great way to support gravity forms so for me its a good solution that gives fantastic results.
What Cache plugins do you use for your WordPress site?
If you want help with other options for Divi Cache let me know in the comments. We have used a heap of them and Im happy to comment or even share an article on other options.
I’ve used Hummingbird from WPMU Dev, Auto optimise and the w3 total cache with site ground.
Breaking Change – Restaurant Menu Plugin Version 3.0.0
Headsup: We will release this update on 8th June, 2018 around 4PM Australian Eastern Time (UTC +10)
What was wrong earlier?
The HTML markup of the menu item was not valid. The title, description and price tags of the menu item was in a H5 tag. It’s not semantically correct. Before it starts to cause any real issues, we’d like to fix it.. Also, we canot apply responsive styles to the menu item due to the way to markup is setup.
Its our mistake and we apologize for the inconvience caused. We have laid out a plan to ensure to fix your website.
Below is a representation of the semantically incorrect markup.
How will it affect me?
Here is a representation of the semantically correct markup.
The menu item title is now in a H5 tag. The menu item description and price are no longer in the H5 tag and now are sibling tags to the H5 tag
You may loose any custom css style applied to the description and price tag. Due to change in the markup, the CSS selectors are different now.
What should I do?
Taking the following steps should ensure a quick turnaround.
Login in your WordPress Admin and open the page containing your Restaurant Menu Divi Module in edit mode. Save this page without making any changes. Divi Theme caches the template in the browser application cache. This step refreshes that cache.
Preview this page to check if its affected.
If there is an isssue,
In all likelyhood, the menu item description and price element styles isn’t what it used to be.