A critical vulnerability was discovered in React Server Components (Next.js). Our systems remain protected but we advise to update packages to newest version. Learn More

Per Nergård (MVP)
Sep 17, 2013
  2403
(0 votes)

CMS7 tool for assisting in verifying block appearance in content areas.

In CMS7 we got blocks which is great for all customers who get more flexible solutions.

Since there today isn’t any real nice solution to limit which blocks can go into a contentarea this introduces a bigger challenge for implementing the html / css and validating that everything looks fine.

Depending on the site and customer we can have page types which have none to maybe even only consist of contentareas. In combination with a lot of different blocks there are a lot of possible combinations to verify.

To make this process easier I have created a small tool. It  generates test pages of your chosen page types adding the blocks you have chosen to all contentareas.

Prerequisites:

Note if you have page types with [Required] properties you need to either temporarily remove the required attribute or maybe use the #debug preprocessor statement to set default values so the page type at least don’t crash.

  1. Create a folder in the global block folder that contains “testblocks” in it’s name. Here you create all blocks that you want to use in the tool.
  2. Below the start page create a page with “testblocks” in the name. This will be the container for where the tool creates pages.

 

The tool

  1. The first thing you need to do is choose a page type which the tool uses for generating container nodes for structuring up test pages. This type should have no limitations as to what page types can be created below it.
  2. Then you choose which blocks you want to generate test pages for.
  3. Then you choose which page types to use when generating test pages.
  4. The fourth option decides how the test pages should be generated.  Example further down in this post.

 

Overview

 

Example 1

Here we want to generate test pages for all blocks and all page types and group them by block.

Option1

Result example 1

 

Result1

Example 2

In example 2 we want to use all blocks and two page types but here we want to add all chosen blocks to each of the page types contentareas.

Option2

Result example 3

Result2_1

result2_2

It’s created as a EPiServer.SimplePage. Just download the code and drop it the site root, change the name space and compile and you’re ready to go.

I hope you find it useful. Any feedback appreciated. The code is over at the code section.

Sep 17, 2013

Comments

Please login to comment.
Latest blogs
Looking back at Optimizely in 2025

Explore Optimizely's architectural shift in 2025, which removed coordination cost through a unified execution loop. Learn how agentic Opal AI and...

Andy Blyth | Dec 17, 2025 |

Cleaning Up Content Graph Webhooks in PaaS CMS: Scheduled Job

The Problem Bit of a niche issue, but we are building a headless solution where the presentation layer is hosted on Netlify, when in a regular...

Minesh Shah (Netcel) | Dec 17, 2025

A day in the life of an Optimizely OMVP - OptiGraphExtensions v2.0: Enhanced Search Control with Language Support and Synonym Slots

Supercharge your Optimizely Graph search experience with powerful new features for multilingual sites and fine-grained search tuning. As search...

Graham Carr | Dec 16, 2025

A day in the life of an Optimizely OMVP - Optimizely Opal: Specialized Agents, Workflows, and Tools Explained

The AI landscape in digital experience platforms has shifted dramatically. At Opticon 2025, Optimizely unveiled the next evolution of Optimizely Op...

Graham Carr | Dec 16, 2025

Optimizely CMS - Learning by Doing: EP09 - Create Hero, Breadcrumb's and Integrate SEO : Demo

  Episode 9  is Live!! The latest installment of my  Learning by Doing: Build Series  on  Optimizely Episode 9 CMS 12  is now available on YouTube!...

Ratish | Dec 15, 2025 |

Building simple Opal tools for product search and content creation

Optimizely Opal tools make it easy for AI agents to call your APIs – in this post we’ll build a small ASP.NET host that exposes two of them: one fo...

Pär Wissmark | Dec 13, 2025 |