Skip to content

Instantly share code, notes, and snippets.

Import-Function Test-ItemIsPageData
Import-Function Edit-FieldValue
Import-Function Get-RelativeDatasourcePath
function Get-NestedDatasource {
[CmdletBinding()]
param(
[Parameter(Mandatory = $true, Position = 0 )]
[Item]$DataFolder
)
<r xmlns:p="p" xmlns:s="s" p:p="1">
<d id="{FE5D7FDF-89C0-4D99-9AA3-B5FBD009C9F3}">
<r uid="{1AB520A5-290F-463B-B6EF-E200A5E36844}" p:before="*" s:ds="local:/Data/Content Cards/Card1" s:id="{DB437FBF-6A68-45E1-84B2-CEC78A71D58D}" s:par="Reset Caching Options&amp;GridParameters=%7B7465D855-992E-4DC2-9855-A03250DFA74B%7D&amp;FieldNames=%7BB4AE42C3-7FBF-40E8-8FC6-DB5F6F63E289%7D&amp;Styles&amp;RenderingIdentifier&amp;DynamicPlaceholderId=2" s:ph="/main/scphcontentcards-1-1" s:ccb="Clear on publish" />
<r uid="{604B37B0-91E8-4FA8-BAC8-473718702DB7}" p:after="r[@uid='{1AB520A5-290F-463B-B6EF-E200A5E36844}']" s:ds="local:/Data/Content Cards/Card2" s:id="{DB437FBF-6A68-45E1-84B2-CEC78A71D58D}" s:par="Reset Caching Options&amp;GridParameters=%7B7465D855-992E-4DC2-9855-A03250DFA74B%7D&amp;FieldNames=%7BB4AE42C3-7FBF-40E8-8FC6-DB5F6F63E289%7D&amp;Styles&amp;CacheClearingBehavior=Clear%20on%20publish&amp;RenderingIdentifier&amp;DynamicPlaceholderId=3" s:ph="/main/scphcontentcards-1-1" />
<r uid="{B4AFD366-D615-4E
<r xmlns:p="p" xmlns:s="s" p:p="1">
<d id="{FE5D7FDF-89C0-4D99-9AA3-B5FBD009C9F3}">
<r uid="{1AB520A5-290F-463B-B6EF-E200A5E36844}" p:before="*" s:ds="local:/Data/Content Cards/Card1" s:id="{DB437FBF-6A68-45E1-84B2-CEC78A71D58D}" s:par="Reset Caching Options&amp;GridParameters=%7B7465D855-992E-4DC2-9855-A03250DFA74B%7D&amp;FieldNames=%7BB4AE42C3-7FBF-40E8-8FC6-DB5F6F63E289%7D&amp;Styles&amp;CacheClearingBehavior=Clear%20on%20publish&amp;RenderingIdentifier&amp;DynamicPlaceholderId=2" s:ph="/main/scphcontentcards-1-1" />
<r uid="{604B37B0-91E8-4FA8-BAC8-473718702DB7}" p:after="r[@uid='{1AB520A5-290F-463B-B6EF-E200A5E36844}']" s:ds="local:/Data/Content Cards/Card2" s:id="{DB437FBF-6A68-45E1-84B2-CEC78A71D58D}" s:par="Reset Caching Options&amp;GridParameters=%7B7465D855-992E-4DC2-9855-A03250DFA74B%7D&amp;FieldNames=%7BB4AE42C3-7FBF-40E8-8FC6-DB5F6F63E289%7D&amp;Styles&amp;CacheClearingBehavior=Clear%20on%20publish&amp;RenderingIdentifier&amp;DynamicPlaceholderId=3" s:ph="/main/scphcontentcards-1-1" />
<r
<script>
$(document).ready(function() {
SCBeacon.trackEvent('Update Contact', { xUserId: 'ABC1234', xFirstName: 'Sheldon', xLastName: 'Cooper', xJobTitle: 'Physicist', xEmail: 'sheldon.cooper@caltech.com' })
});
</script>
using System;
using System.Collections.Generic;
using Sitecore.Analytics;
using Sitecore.Analytics.Model;
using Sitecore.Analytics.Tracking;
using Sitecore.Diagnostics;
using Sitecore.FXM.Tracking;
using Sitecore.Marketing.Definitions;
using Sitecore.XConnect;
using Sitecore.XConnect.Client;
private List<string> GetRelatedItems(ID id)
{
try
{
var db = Sitecore.Context.Database;
Database database = Factory.GetDatabase("" + db.Name + "");
using (var context = ContentSearchManager.GetIndex("sitecore_sxa_" + db.Name + "_index").CreateSearchContext())
{
SearchResults<SearchResultItem> searchResults;
Item currentItem = database.GetItem(id);
@model Sitecore.ExperienceForms.Mvc.Models.Fields.TextViewModel
<@Model.HtmlTag data-sc-field-key="@Model.ConditionSettings.FieldKey" class="@Model.CssClass success-message">@Model.Text</@Model.HtmlTag>
<sitecore>
<pipelines>
<generateScribanContext>
<processor type="SCMadeEasy.Feature.ScribanExtensions.LinkTargetUrl, SCMadeEasy.Feature.ScribanExtensions" resolve="true" />
</generateScribanContext>
</pipelines>
</sitecore>
public class LinkTargetUrl : IGenerateScribanContextProcessor
{
private readonly IContext context;
private delegate string LinkTargetUrlDelegate(Item item, string linkFieldName);
public LinkTargetUrl(IContext context)
{
this.context = context;
}
public void Process(GenerateScribanContextPipelineArgs args)
{
var linkTargetUrl = new LinkTargetUrlDelegate(GetLinkTargetUrl);
args.GlobalScriptObject.Import("sc_linktargeturl", (Delegate)linkTargetUrl);
}