How to create a 'global' Bloc

Hi, in the dynamic content area, I would like to have a Bloc that is ‘global’, so if I updated it on one page, it updates on all of them.

For example a ‘call to action’ that can be used on various pages.

Hopefully there is a way to do this?

1 Like

Hi Simon,

Why don’t you use the Global Footer Area for that purpose?

Thanks Eldar,

But what if I wanted to use it in a sidebar, or only on some, not all pages?

The CTA is just one example. Other examples might be a ‘Profile Bloc’, with an image, name and bio, or ‘Opening Hours’, or ‘Important Announcement’ that is used in the Dynamic Content area on multiple pages.

I think what you are describing requires CMS. In fact, it is totally possible to archive with Volt CMS.

1 Like

Thanks.

A CMS would definitely be more than is needed.

In my case (my first site with Blocs), I simply need to show a short price list in the sidebar of most pages (about 20 pages).

If the price list changes, I don’t want to change it on every page.

Surely there must be a way to do this in Blocs?

There is no obvious way to do that in Blocs, as it only allows to apply the similar workflow for global content areas.

I am surprised. But thanks very much for your help.

Maybe this is an area which @Norm could look at adding?
I have not come up with a need to add global sections/blocs other than in the footer as yet in Blocs - but come to think of it since @simonclay posted is that with another format, I did use global area’s on several pages as added a discount on a package section during Christmas and added a snow effect on this section and it replicated it on all the pages I had this discount on, instead of going to 7 pages.

A Global Bloc would be a huge asset to us all, and what we drop into it would make that Global throughout the site.

2 Likes

I feel the same.

Just want to confirm that this is possible with Volt CMS.

1 Like

The best way is to create your global bloc and save it in your blocs library. This way, you can simply add it to any page at any time and change its content on a page by page basis. This solution won’t allow you to change the content in one bloc and then have those changes reflected in all the others, but it will save you having to recreate the bloc on every page.

The other alternative would be to place an iframe on your page that displays an HTML file. This could be a small page created in Blocs or with a simpler HTML editor which will be excluded from your navigation. Whenever you want to change the content, simply edit the small page and it will then reflect in all your other pages where the page is displayed in an iframe.

1 Like

That’s actually a cool way to do that. I have used this technique in the past when creating the first version of Event template. At the time, we didn’t have the tabbed content bric, so I have used the iframe to create a cool looking tabbed content area.

But, of course, something like a Global Bloc sounds cool.

1 Like

Yep, and its quite easy to do with blocs. You simply create the content page as a separate bloc project (called content or something similar). Add a single full width block to the page (no global areas) and create your content. Export to a folder on your desktop (also called content or something similar). Then, back in your main blocs project, add iframes through the code bric to any or all pages in your site and have the iframe target your content folder.

Some things that you may need to watch. Any custom classes that have been applied in your main project may have to be added to the content project if any of the content uses the same styling options (buttons for example). Also, any links you create in the content should be set to target the parent page, otherwise they will simply open the target within the iframe. Apart from these, the option works well. You will have to export the project and then add the content folder into the root of the exported site to see it all working.

Of course, if you want the content to be different on each page, it would be better to use the blocs library option.

1 Like

Thanks all, I think for now I will hand code the ‘global’ part, add it via Project Attachments and include it with PHP using the HTML widget (preview ‘off’ of course!).

1 Like

Thanks, the content will be updated occasionally and I want to avoid having to change it on multiple pages.

@simonclay If you use the iFrame option, you will only have to make the changes once in the content page and it will automatically populate all the blocs in your site containing the iFrame.

Thanks, I know what you’re saying and I might well use it! It just feels too much like a 90s hack for me :smiley:

I know what you mean, but it’s still a “hack” that is used extensively in today’s world. Think of embedded video content, or embedded shopping carts and third-party forms integration. They all use iframes. So, although it does need the internet to come of age, it’s one of the few solutions that still work as well today as it did when it was first introduced.

1 Like

Absolutely, I do agree. Thank you.