1

I would like to get selected SXA style of the Teaser component in Powershell script.

I have a teaser component where i have selected SXA style on Experience editor . I would like to get selected SXA style of that component in Powershell script. Is it possible ?

Kindly assist me.

2 Answers 2

1

You can write this PowerShell script to find all the selected styles for any particular rendering. Enhance this script as per your requirements.

$item = Get-Item -Path "master:" -ID "{B008740C-839F-40BF-B343-84E14F6AEDC4}"
$defaultLayout = Get-LayoutDevice "Default"
#Get the Teaser Rendering by passing Placeholder Name and Item ID
$rendering= Get-Rendering -Item $item -Placeholder "*/main/container-23/row-4-12*" -Device $defaultLayout -FinalLayout
# Assuming this returns one rendering only
$dict = [Sitecore.Web.WebUtil]::ParseQueryString($rendering.Parameters)
$parameterValue = $dict['Styles'].Replace("%7B","{").Replace("%7D","}").Replace("%7C","|").Split('|')
foreach($styleItem in $parameterValue)
{
    $itemname = Get-Item -Path "master:" -ID $styleItem
    write-host $itemname.Name
}
2
  • Could you assist me how can I use the same scenario for Slick Carousel as with above code it is not getting the selected style ?
    – Nisha
    Oct 4 at 12:53
  • This code should work for all rendering, just make sure you have given the right placeholder and put write-host to find out if the correct rendering is being referenced. Oct 5 at 5:47
1

You can get it simply by using the Rendering Parameter on the item.

Your script should be like this.

# Get your item by ID
$item = Get-Item -Path "master:" -ID "{B485F716-9E95-42E8-8DE0-844E988A1BDF}"

# Create a loop on all the renderings of the item. 
foreach($itemRendering in Get-Rendering -Item $item -FinalLayout) {
    # Get the rendering Parameters. 
    Get-RenderingParameter -Rendering $itemRendering | Format-Table -Auto
}

You will get the rendering parameters data with Style parameters also like this.

Name                  Value
----                  -----
Navigation            {848DFE42-2B13-430E-A0B9-89CE25730A06}
Transition            {D4B706CC-7EEC-4DB9-A87D-123B29803490}
Timeout               2000
PauseOnHover          1
Reset Caching Options
GridParameters        {908E2BC6-C110-4ED7-AF39-7EEACBB31A34}
Styles                {C414B189-DAA3-4490-9B03-A7B6F4AC3A2C}|{F2A30C96-BC00-4CCD-BC1E-384744EE24C8}|{32E7E96A-17CD-4FDE-90D8-62A48B0D8BF5}
RenderingIdentifier
DynamicPlaceholderId  3

You will get the Styles ID. Now update the above logic and use Get-Item to get the field values on this item.

Hope this helps.

9
  • The documentation provides some good examples as well. doc.sitecorepowershell.com/appendix/presentation/… Oct 3 at 16:18
  • Slick Carousel this code is not working
    – Nisha
    Oct 4 at 12:55
  • @Nisha let me check. Are you using OOTB Carousel? And can you specify the Sitecore version? Oct 4 at 12:57
  • @Nisha I tested that for the Carousel and it works. And the values that are coming in my answer are for the Carousel component. Oct 4 at 13:00
  • I have added style on "Slick Carousel slide content" and it is showing nothing
    – Nisha
    Oct 4 at 13:23

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.