Expand my Community achievements bar.

Applications for the 2024-2025 Adobe Experience Manager Champion Program are open!

AEM /content/campaigns editable template displays classic UI


Level 2

We are setting up the integration between Experience Manager en Campaign Standard and would like to use editable templates as we do on our content pages. We are experiencing an issue when creating pages using the newly created template under /content/campaigns, the UI seems to display the classic UI even though we are asking for a touch ui based url: http://localhost:4502/editor.html/content/campaigns/brand/master/en_us/mail.html


I also see the same issue when I allow + use one of the editable template we used for our regular site pages. How can we resolve this issue?


NOTE: all of our editable templates have a core components page resourceSuperType: 



2 Replies


Community Advisor

Hi @jeroen-ida,

Please check the below official doc for Integration of AEM with Campaign Standard if you haven't checked already (which includes Best practices and Troubleshooting link within)



For exact and appropriate answer, suggest to raise this query in dedicated community for Campaign Standard. 




Level 2

The official docs has no information on editable templates at all. I find it really weird that the email templates have this weird templating structure, why isn't It supporting editable templates out of the box as it does for the site pages? This is the forum section for AEM right, seems like this is the appropriate part of the forum to get a response as ACS has no direct influence on this issue.


According to https://blogs.perficient.com/2017/11/16/no-matter-what-a-anyone-tells-you-theres-no-touchui-under-et... it seems like classic UI is being forced on my page:




Is there a way to prevent this from happening?

EDIT: I found the bundle/jar where the code is forcing me to use classic UI:




if ("html".equals(slingRequest.getRequestPathInfo().getExtension()) && resource.adaptTo(Page.class) != null && path.startsWith("/content/campaigns")) {
Resource content = resource.getChild("jcr:content");
List<String> excludeClassicUITypes = Arrays.asList("wcm/designimporter/components/importerpage", "cq/personalization/components/teaserpage", "cq/personalization/components/offerproxy", "mcm/campaign/components/newsletter", "mcm/campaign/components/campaign_newsletterpage", "mcm/campaign/components/profile");
boolean forceClassic = true;
Iterator var13 = excludeClassicUITypes.iterator();


This code is far from optimal in my opinion, what is the suggested fix, should I create a service with a lower ranking?