Veterans: How would you approach adding a blog?

So, I’m looking to add a blog to my page, for marketing and SEO purposes. However, I’m a little perplexed on the best approach to doing this.

So, I want to have a blog, where you scroll down and see the topic titles with images and the very beginning of the text, with a “read more” button that takes you to it’s own page for that particular blog post. However, the only way I can think to do it would clog up my pages tab on bubble(as seen below):


Is there any other approach to this, that won’t have to be managed through the pages tab above? I can foresee that tab having hundreds of individual pages, after blogging for some time.

Anyway, I still want to have the ability to manage the link architecture since it’s so vital to the success of SEO.

If this is what I have to do, then I will, but I am curious if anyone is doing it a different way?

While not exactly the response you’re looking for, when it comes to blogs, it is one of the few things that I actively recommend not building on Bubble.

Why? There are many off-the shelf blog utilities that offer substantially better blog management out of the box than building from scratch in Bubble. A common convention is to have an outbound link to a Medium account (or Wordpress, etc). This goes for SEO, link presentation, draft management, categorization…

If you do decide to build on Bubble, here’s what I generally recommend.

Create three core pages: a blog manager (for admin purposes, an “all/categories” page and a “post” page, which serves as a template for displaying posts.

The post page is The “my-awesome-post” is what you might call a “slug” - a unique, short text descriptor for the article that can be used to identify it in the database.

So, from your /all page, a user may click “read more” which takes then to the /post
page and affixes the slug to the path, so it becomes /post/slug-of-clicked-post. And on the post page, you set the source using a “Do a search for: first item”


Wouldn’t linking to an external blog basically defeat the purpose of having a blog? (Mostly SEO and online visibility for your site)

1 Like

Thanks, I’ll take a crack at this as soon as I have some free time. I think I understand what you’re saying. You may have just saved me a lot of head aches, so I really appreciate the help…

1 Like

@seth1 - you have a valid point. I can’t claim any real expertise on the material impact of a Medium/WordPress blog that links heavily to your Bubble app versus having content directly within Bubble and building your ranking based on that.

My belief is that WordPress, Medium and the like have much better pre-built tools for SEO than building from scratch in Bubble. As well, it’s the tradeoff of where your time is spent.

1 Like

I think the way to do it for SEO is to load the blog to your site and put it on a sub-domain. Then, re-post the articles to Medium, etc. and add links from those to the corresponding page on your site so that Google will know your site is the original authority.

This should work pretty well. The only material problem is that the blog is on a separate sub-domain which Google used to really care about but doesn’t seem to matter as much anymore and will probably matter less and less as time goes by.


This is the right idea. What you do is publish your content on your site. (And,, a blog article page is just like any other dynamic page: You’re not creating multiple pages in your app. There are only 2. The list of summaries (which could be full articles, cuz why not?) and a view individual article page. The first is just a repeating group that shows part of the blog posts. The second is is just a viewer for blog posts that takes an Blog Post as its argument.)

You can publish on your site in ugly mode. Now that the basic text exists, you do a new post on Medium via import. When you do that, it’ll create a canonical tag back to your original content. Now Google sees these pages as the same… And gives the original page credit for views on Medium.

The Medium version of the post will have more authority. That’s fine… because anyone who sees that will be counted as seeing your original content.


I’m actually building exactly this myself currently - it’s a bit of an experiment, but not very complicated, and working okay so far.

First step is to have a new data type named article with various fields you’d want an article to have:

Then a repeating group (or two) which show the articles on a dedicated ‘blog’ page. I used one, large group to show the latest article, and a seperate repeating group for everything else:



As you can see, I’m just populating those cells with relevant data fields of the article beneath.

Clicking any of them sends that cell’s article to a new ‘article’ page displaying that article’s data (title, coverImage, body, creator/author’s name), dynamically. Just make sure to set the field for readable URL to the article’s title - this will put the article’s title in that page’s URL and thus help with SEO.

And for an edit/post page, I’m using Bubble’s own Richtext input to build the article body, which you can install for free as a plugin. It has some limitations, one of which is uploading your own images to use in the article, which you’ll need to do if you’re not linking to them from elsewhere.

To get around that, I created a new data type called image, which I upload images to from the article page itself with the Picture Uploader. And if you then have a repeating group that displays these images, with @seanhoots’s Air Copy to Clipboard in the cell, the cell’s image as the background, and the text to copy being the current cell’s image’s URL, then you can easily click on an image in the repeating group to access this url and paste it into the rich text input via the Insert an image button of the Richtext input.

Happy to share a link to my editor if you’d like.


These are amazing responses. I’m glad that I asked for peoples opinion on what approach I should take.

deleted by

Ok so, create three pages:
-Blog manager (for admin purposes)
-All/categories (serves as a teaser, so people can decide which to “read more” of)
-Post (The actually full page article, after a user has clicked “read more”)

What is still ambiguous to me is how you use a single “Post” page, but have the url change to the name of the article. If I want the article on the post page to be titled “Best Indian Foods”, how exactly do I make the url …/post/Best-Indian-Foods?

You would utilize the “Get data from page URL” function. Specifically, you would be pulling the “path” of the URL. (Where the path is the “slug” concept I mentioned earlier).

When you direct users to the “post” page, you may need to “construct” your URL use a navigate to an external site action (use: website home url/post/slug of the selected post.


Hey, thanks for such an in depth response. Can you please share your editor? I’m trying to wrap my head around how you’re handling the limitations of adding images via bubbles rich text editor…

@romanmg This topic would make a fantastic youtube video. Just saying…

1 Like

I’ve actually got an hour-long webinar on this topic coming up in January for my VIP members. If you’re not already a member, you can join here:

I will be walking through the back and front-end designs for a custom blog, including URL structure.

You’re right about the limitations with images in the rich text editor. It’s an unfortunate wall you have to work around. There are paid text editors out there that have enhanced that functionality a bit. You could try those, or you’ll need to have your images hosted somewhere to insert the hosted link the Bubble’s own rich text editor.


This topic was automatically closed after 70 days. New replies are no longer allowed.