powershell icon indicating copy to clipboard operation
powershell copied to clipboard

[BUG] Set-PnPPageTextPart returns You cannot host text controls inside a one column full width section ...

Open Mesicni opened this issue 10 months ago • 2 comments

Reporting an Issue or Missing Feature

Set-PnPPageTextPart returns error You cannot host text controls inside a one column full width section, only an image web part or hero web part are allowed after Microsoft pushed updates to Page layout options.

Expected behavior

Change text webpart text. The issue is probably related to the recent Microsoft updates to top page section, which now allows fullwidth section with webparts instead of only banner or hero. Related to

Actual behavior

Error: Set-PnPPageTextPart : You cannot host text controls inside a one column full width section, only an image web part or hero web part are allowed At line:32 char:17

Steps to reproduce behavior

#variables $siteUrl = "xxx" $oldText = "abc" $newText = "def"

#script

Connect-PnPOnline uuu -clientID yyy
 
# Get all pages from the Site Pages library
$pages = Get-PnPListItem -List "Site Pages"
 
foreach ($pageItem in $pages) {
    # Get the file name of the page
    $pageName = $pageItem.FieldValues["FileLeafRef"]
    Write-Host "Processing page: $pageName" -ForegroundColor Yellow
 
    # Load the page
    $page = Get-PnPClientSidePage -Identity $pageName
 
    if ($page) {
        foreach ($webPart in $page.Controls) {
            if ($webPart.Type.Name -eq "PageText") {
                $textContent = $webPart.Properties["Text"]

                # Replace old text with new text
                $updatedTextContent = $textContent -replace [regex]::Escape($oldText), $newText
 
                # Update the text part
                #Set-PnPPageTextPart -Page $pageName -Text $updatedTextContent -InstanceId $webPart.InstanceId
                # $instanceIdString = $webPart.InstanceId.ToString()
                #Write-Host "Text webpart $instanceIdString.InstanceId updated successfully for page $pageName." -ForegroundColor Green
            }
        }
    } else {
        Write-Host "Page not found or could not be loaded: $pageName" -ForegroundColor Red
    }
}

What is the version of the Cmdlet module you are running?

1.12.0

Which operating system/environment are you running PnP PowerShell on?

  • [ x] Windows

Mesicni avatar Jan 31 '25 09:01 Mesicni

Do you know when this bug will be fixed?

Raven081189 avatar Feb 21 '25 10:02 Raven081189

Hello, can you please try out the latest nightly builds and let us know ? There has been quite a few improvements in this area , hopefully helps with your issue.

gautamdsheth avatar May 24 '25 18:05 gautamdsheth

We see this issue in version 3.1.0 as well.

I get issues when trying to add new sections with Add-PnPPageSection I also get the issue when trying to add text web part with Add-PnPPageTextPart to non full width sections

"You cannot host text controls inside a one column full width section, only an image web part or hero web part are allowed"

JoelBool avatar Aug 25 '25 07:08 JoelBool