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)
Feb 10, 2025
  111
(0 votes)

PageCriteriaQueryService builder with Blazor and MudBlazor

This might be a stupid idea but my new years resolution was to do / test more stuff so here goes. This razor component allows users to build and execute queries against your CMS site, providing a semi user-friendly interface for searching for pages based on content type, properties.

You do need to have knowledge about your content types and the data but the thought is that when the need arises to identify what pages / how many pages you have with a certain combination of data you should be able to find those without any coding. If the results are not that many maybe manually editing them and adjusting what is needed is enough. If the number is to high or more complex changes needs to be performed a action-button can be added to do the work instead of possible doing a scheduled job or something.

You can find the code over at my Gist.

Criteria:
So you can create criteria parameters based on content type , propertes and condition and make them required or not. Required parameters will be shown in green.

Search:
When youre happy with your criterias you select a startnode (Root or any of the defined sites) and hit search. If you are not happy with the results you can delete individual parameters or all.

Results:
Simple list with a link to edit mode for each content that opens in a new tab.

Actions:
I actually haven't implemented any actions. But the idea is that it's easy to add any action need to perform actions on the search result.


Looks like this:

Feb 10, 2025

Comments

Please login to comment.
Latest blogs
A day in the life of an Optimizely OMVP: Learning Optimizely Just Got Easier: Introducing the Optimizely Learning Centre

On the back of my last post about the Opti Graph Learning Centre, I am now happy to announce a revamped interactive learning platform that makes...

Graham Carr | Jan 31, 2026

Scheduled job for deleting content types and all related content

In my previous blog post which was about getting an overview of your sites content https://world.optimizely.com/blogs/Per-Nergard/Dates/2026/1/sche...

Per Nergård (MVP) | Jan 30, 2026

Working With Applications in Optimizely CMS 13

💡 Note:  The following content has been written based on Optimizely CMS 13 Preview 2 and may not accurately reflect the final release version. As...

Mark Stott | Jan 30, 2026

Experimentation at Speed Using Optimizely Opal and Web Experimentation

If you are working in experimentation, you will know that speed matters. The quicker you can go from idea to implementation, the faster you can...

Minesh Shah (Netcel) | Jan 30, 2026