Eric Herlitz
OMVPPaaS CMS Administrator CertificationOpal Administrator Certification
Jul 18, 2013
visibility 5537
star star star star star
(0 votes)

Problems finding the root folder for blocks

In a project that had been upgraded from EPi6 R2 (originally an EPi4 site) with PageTypeBuilder to EPi7 the Global Library in the block section was missing.

When checking the parameters globalBlockFolderId and siteBlockFolderId in sitesettings of episerver.config I noticed they was set to 3 that is all correct in a new site. Since this was an upgraded site and the concept of blocks being all new this obviously was wrong.

clip_image001[6]


To find out the correct id I constructed a simple SQL

SELECT pkID FROM [dbo].[tblContent] where fkContentTypeID =
(SELECT pkID FROM [dbo].[tblContentType] where [Name] = 'SysContentFolder') AND ContentPath = '.1.'

This will return the pkID you must set in the globalBlockFolderId and siteBlockFolderId parameters

clip_image003[5]

Jul 18, 2013

Comments

Per Magne Skuseth
Per Magne Skuseth Jul 19, 2013 07:30 AM

You can also find the id if via "set access rights" in admin mode. You should see the block folder in the tree, and you'll see the id in the url when hovering the item.

Feb 17, 2014 11:40 AM

@Per Magne, that is correct but not very useful if the episerver.config isn't correctly configured!

Dec 28, 2016 08:47 AM

There is also a Stored Procedure called netContentRootList, it will list the ID's for RootPage, WasteBasket, GlobalAssets and ContentAssets.

error Please login to comment.
Latest blogs
Exploring Cached Templates and Cursor Pagination in the Optimizely Graph C# SDK

While experimenting with the  Optimizely Graph C# SDK (13.3.0) in my local Optimizely CMS 13 Alloy project, I came across two interesting findings:...

Mardy | Oct 19, 2026

EPiServer.ImageLibrary.ImageSharp 2.0.7 delisted from NuGet feed

We have delisted version 2.0.7 of the EPiServer.ImageLibrary.ImageSharp package from the NuGet feed due to a packaging issue. This version was...

Phu Nguyen | Oct 19, 2026

Surviving a Dirty Feed. Part 3: Error Handling and Event Batching

Committing a 250,000-row Optimizely catalog import row by row, returning a per-row failure report, and coalescing catalog events into one per batch.

Stanisław Szołkowski | Oct 16, 2026 |

Building UI Extensions for Optimizely SaaS CMS

Introduction Developers have been extending the functionality of Optimizely PaaS CMS for years using addons built in C# and deployed as NuGet...

Mark Stott | Oct 15, 2026