Learn exactly how to makeBETTER WEBSITES RIDICULOUSLY FAST

Get exclusive tips that'll help you master WordPress, Beaver Builder and lots more.

Set up a Blog with Beaver Builder the right way without using modules

By using the Blog Post modules available in Beaver Builder plugin (or any third-party Beaver Builder addon) and adding them to a page to create your main blog page, you may be limiting yourself both now and in the future. This is not the conventional way to set up a blog with Beaver Builder and you run the risk of having to completely redo your blog as the requirements for the blog evolve (as we’ll discuss below), and as a web agency, you’ll most likely end up having to do hours of work for free.

Follow along with this blog post (or watch the video below) and learn the exact steps you need to follow to set up a blog with Beaver Builder and WordPress the correct way.

There are two ways you can set up a Blog with Beaver Builder

And one is extremely more flexible, full proof and above all…the right way to do it.

  1. Option 1: Create a new Page named Blog, edit it with Beaver Builder and add a Posts module into the page. Click save and you’re done.
  2. Option 2: The default WordPress method. Create a new Page named Blog, go to your WordPress Dashboard > Settings > Reading and set your Posts Page to this newly created Blog page.

While you might naturally want to use Option 1 (hey, it uses the incredible Beaver Builder page builder plugin and you can edit it using drag-and-drop) Option 2 is a better method.

That’s why we don’t use any Post modules for the main blog page in any of our Beaver Builder Child Themes.

Here’s why.

The problem you’ll run into sooner than you think

You’ve got a new client for your web agency and they’re super eager to get a blog up. You like this, as blogs bring in traffic and traffic equals a happy client.

Cool bananas!

You’ll charge them a couple of hundred dollars for the blog, create a new page and drag in the Beaver Builder Postmodule and call it a day. They’ll love it and you’ll walk away having made a quick bit of money.

Just like below.

blog-post-create-page

blog-posts-add-blog-post-module-to-a-page

Next comes the client’s need for changes

The client’s needs have evolved (like they always do). They’ve done what you’ve said and kept up regular blogging (clients always listen, right?). They’ve even got a bit of traffic to their site.

Even better, they’re letter you know that they’ve even built a Facebook page and twitter handle, and they’re ready to get some social share buttons on the blog posts.

Too easy!

You install your favorite social share plugin (we use Scriptless Social Sharing – thanks Davinder) and configure all the settings, then preview the blog. The social share buttons show perfectly when viewing an individual blog post, so that’s done. They look perfect.

blog-posts-social-buttons-on-single

But then comes that day you wish you’d stayed in bed.

The client wants these social icons to also show for each blog post on your blog page – the page that lists your blog feed.

Hmm… you think. The plugin is configured correctly. You wonder why it isn’t working.

Why are they showing for each individual post but not for the posts in the Beaver Builder posts module?

Because you’re using the Blog Posts module!

You haven’t set up a blog with Beaver Builder the right way!

The difference between the Blog Posts module and the standard WordPress Blog Post template

We all know that WordPress runs off a database because we set up the database when we install WordPress. Each time a page in WordPress needs to be loaded, it does these three steps in this order:

  • STEP 1: WordPress gets the information about the post/page it needs to load
  • STEP 2: It then goes to the Database and gets the information about this post/page
  • STEP 3: It then outputs this information from the database to create the post/page

We don’t want to overwhelm our fellow Beyonders, but to explain this we need to get slightly technical. If you’re really looking at mastering WordPress you need to know this.

The reason you should not be using the Beaver Builder Posts module lies between Steps 1 and 2.

Defining the main WordPress Query

In WordPress there are two types of queries that you’ll hear about. They are:

  • The main query: this is the main database query that loads the page. For example, when you click on your About page, the main query is responsible for getting the content of your about page. If we click on the About page, then the main query holds information like:
    • Post Type: Page
    • Post Title: About
    • etc etc
  • Secondary queries: (also known as custom queries) these are responsible for outputting everything else that loads on the page that is not the main query. For example, if on your About page you have a sidebar that displays your 5 most recent posts, this is a secondary query. The main query is responsible for getting all the information to load the About page, and during the loading of the main query there is a trigger to run this secondary query to get the 5 recent blog posts to output in this sidebar. Once this secondary query completes, the query is reset back to the main query and continues to load the About page.

Why are you telling me about queries? I feel sick

Sorry, but for the rest of the article, you just need to know that there are two different types of queries, the main query, and the secondary queries that load during the main query.

The reason you should not use the Posts module in Beaver Builder for your main blog page

Most WordPress plugins that add Social Share Icons to your posts, limit the number of characters in your post excerpts, or add any other customizations to your blog posts only affect blog posts in the main query.

There is a WordPress function that checks to see if the current query IS in fact the main query. It is called is_main_query() and you can find the documentation on this core WordPress function here.

And this function is the exact reason why our social share icons are not showing in our Beaver Builder Posts module.

If we take a peek into the Scriptless Social Share plugin code, you will find this function below.

blog-posts-is-main-query-social

This function controls whether the social share buttons are output, and the first thing the function checks to see is whether it is the main query.

The line if( ! is_main_query() ) checks to see if it is NOT the main query. If it is NOT the main query, then $cando = false; which stops the buttons from outputting.

The Beaver Builder Posts module is a secondary query

And this is why Blog customization plugins will not work with the module. Plugins will check to see if it is the main query (which the blog Posts module in Beaver Builder is NOT) and then they will not output their code.

Why is the Beaver Builder Posts module a secondary query?

Because the main query is the Page. At the start of this article we create a new Page called Blog, edited the page with the Beaver Builder plugin, and then added a Posts module into the page.

When we do this, the main query is actually the Blog page. During the load of this Blog page, it will eventually get to the point in which it needs to load the Posts module that you’ve added into the page. At this point, WordPress starts a secondary query to get these posts needed to output the Posts module. Once it loads the posts in this Posts module, WordPress then goes back to the main query and continues to load the Blog page’s main query.

Here’s a real world example of using the Posts module vs using the native WordPress blog template

The image below compares the default WordPress blog template (set under General > Reading) with the Posts module Beaver Builder module that has been added into a page.

Using what we’ve learnt

The default WordPress blog template is showing the Social share icons as it is the main query.

The Beaver Builder Posts module is NOT showing the social icons because it is NOT the main query, but rather it is a secondary (custom) query.

Set up a blog with Beaver Builder comparison of Beaver Builder blog module and Blog template

The proof is in the pudding, so they say, and we hope this image helps you recognise the downfalls of the Posts modules included in Beaver Builder.

UPDATE! I’ve received some news from the community that the Social Media plugin Social Warfare does work with the Blog Post modules that come with Beaver Builder and the addons like Ultimate Addons for Beaver Builder and PowerPack which is good for those who still wish to use the Beaver Builder Post modules.

Putting it all together

So you know why you should not be using the Beaver Builder Posts module for your blog, but we don’t want you to feel like you need to ditch all the great layouts offered by the Posts module in Beaver Builder and settle for the standard blog layout of your theme.

For example, there’s some really cool blog layouts and effects that you can create with Ultimate Addons for Beaver Builder and, if you know your client will not need to customize the blog later on, you can definitely still use this or the native Beaver Builder POSTS module. You can also use these Post modules for things like your homepage where you only show a couple of posts and you’re not using them for your main blog.

After reading this article, you now can make an informed decision as to whether you should or should not use POSTS modules in Beaver Builder.

That’s the main point of this article after all – to educate you to allow you to make better decisions.

I will say that although why we don’t use any Post modules for the main blog pages in our Beaver Builder Child Themes, we do use the Posts modules on other areas of the website. For example, on our BeWell Beaver Builder Child Theme we use the Posts module at the bottom of the page for the carousel. This makes sense! But on the main blog page we use the native WordPress blog functionality. See the difference? The post modules are great to use on other pages of your website.

You can still customize the default Blog template to look like the Posts module

But you will need to know CSS. That’s the only downside. Need your blog to be in a grid with three blog posts across? Use CSS.

But we know it is not as simple as telling you to use CSS because CSS can be tricky and you might have more important things to do than learn CSS.

So you’re telling me I can’t use the Posts module in Beaver Builder for my blog and that I have to know CSS?

At the end of the day you need to analyze the requirements of what you’re doing and forecast the needs of the blog in the future.

If you’re doing a client website, are they likely to need customizations in the future? If so, use the method recommended in this article and either pay someone to write the CSS you need (it shouldn’t cost much), or take the time to learn CSS.

Above all, you just don’t want to quote a client an amount to set up the blog with the Posts module, and then have to re-quote them to completely redo the blog because they want to add something like social icons.

From a client’s perspective it doesn’t make sense.

They’ve paid you to set up the blog, and now they’re paying you to add Social icons. Why should they pay you to recode the blog to add the Social icons, because you didn’t do it the right way in the first place?

It’s food for thought. All of this article

And by not using the Posts module you could save yourself from many awkward conversations with clients later on down the track.

The blog is the heart of your website; the place where traffic comes into your website and falls in love with what you’re written.

You wouldn’t take shortcuts with your heart, so why take them with your blog?

What you should do next

  1. Review the different Post modules that are available in the Beaver Builder plugin and also those available in third-party addons like Ultimate Addons for Beaver Builder and PowerPack. You can still use these throughout your website if you understand the pros and cons of doing. I am using the Posts modules on my current home page (current home page at the time of writing this article).

10 Comments

  1. Ian Thompson on August 3, 2016 at 2:55 pm

    Interesting article – i had some issues with just this topic recently. I have a standard WordPress blog page available at /blog/ as usual and another blog page at /brainy-blog/ that i use for public consumption. It has the BB post module on it. The odd thing is I was trying a number of social share button plugins; Monarch and Social Warfare and despite me not wanting them there, the latter was putting the buttons
    In the BB post module and the former was not! So your point about the posts module is spot on as it is going to throw unknown issues at you where the native blog page is going to behave in a pretty predictable way. Maybe having both like I do is the way to go? Or is that somehow not SEO or user friendly? Thanks for the article!

    • Beyonder #1 on August 4, 2016 at 1:09 am

      I’d say the duplicate archive pages for the blog (the standard WP and one with BB modules) is duplicate content but probably not a penalty you need to worry about (id probaby ask someone specialising in SEO who has tested this and has actual results from it and how it affects SEO). I personally would not worry about it. But it is great to hear first hand that you’ve struggled with the issue described in the blog. I think it is definitely causing a few headaches. I avoid headaches but can CSS code. If someone else doesnt know CSS and wants the grid, and understands the implications of using the modules and not the standard WP blog page, then I think they can still get away with using it. But I still would not use them on client websites as I do not know what the client’s needs are in the future. Thank you for your comment!

      • Ian Thompson on August 5, 2016 at 4:09 am

        Google will only penalise you if it believes you are duplicating content in order to manipulate rankings. Most search engines don’t care about duplicate content – they just want to know which version if the original. Good article about that here: https://avollio.com/dealing-duplicate-content-wordpress/

        I had a client ring me up today saying they published a post but it wasn’t showing up on the blog. Guess what? They had ESS Grid with category filters on the ‘blog’ page and their new post had a new category that wasn’t in the ESS filters so of course, it didn’t show up!

  2. bluedognz on August 16, 2016 at 2:05 am

    Great stuff Grant! Very timely as I’m building a complex blog / podcast website at the moment. How do you filter blog categories using the WP native blog page? And any ideas how to display SoundCloud podcast player on the archive page? Will it display in a hook like the Social Sharing buttons? I’m using BB theme of course. 🙂 Clark

  3. doublemint2x on August 30, 2016 at 12:42 pm

    Ouch, this article is so great but it hurts so bad. I have been planning on designing a nicely designed blog for a while (similar to pinch of yum or minimalist baker – the blog is the website). Beaver builder page builder was going to make it so easy – not anymore! I essentially have to learn CSS to make the blog look like one of those blogs eh? Maybe I should just use one of my studiopress templates in this case. What are your thoughts? …super bummed.

    • Grant Ambrose on August 31, 2016 at 1:50 am

      If I were in your shoes and needing to do a news website I would go with a studiopress theme for the news layout. They look great, the code is good and the framework is excellent. It’ll also save you time. You can still use Beaver Builder to build the other inside pages but for the blog post pages just use the Genesis Theme’s layout that you choose 🙂

      • Grant Ambrose on August 31, 2016 at 1:52 am

        Something else I thought I would mention is that I never use Beaver Builder to edit posts as I find the box too small. So, if you think about it, your home page and the post pages could be the genesis pages. You can use hooks to output beaver builder templates into the Genesis home pages, though, so you can still customize your pages in your blog using Beaver Builder.

        • doublemint2x on August 31, 2016 at 3:21 am

          Thanks for the advice Grant. I will definitely have to look into these hooks. Not sure if I quite understand exactly what you are saying yet…future post? 🙂 Have you ever used thrive content builder to edit posts?

          • Grant Ambrose on August 31, 2016 at 3:55 am

            The hooks and templates I discuss in this post https://beyondbeaver.com/create-a-footer-that-you-can-easily-edit-with-beaver-builder/

            Basically, you use Genesis for your home page as it is built using widgets. Genesis has hooks that allow you to insert content before and after the header (For example) using genesis_after_header. So, you can build a beaver builder template and then hook it in using this hook.

            Thrive Builder – No, once I found Beaver Builder I didn’t look elsewhere. Why don’t you edit your posts with Beaver Builder? I use Thrive Leads which uses Thrive Content Builder but it doesnt seem very user-friendly sometimes. Thrive Leads is such a great plugin though so I put up with it haha.



Leave a Comment

You must be logged in to post a comment.