Expand my Community achievements bar.

Don’t miss the AEM Skill Exchange in SF on Nov 14—hear from industry leaders, learn best practices, and enhance your AEM strategy with practical tips.
SOLVED

Sightly sample code

Avatar

Level 4

Hi,

Can anyone post a sample code in sightly which contains getting a node from page, resource resolver , session variable, page to node conversion so that one can understand. Please help.

1 Accepted Solution

Avatar

Correct answer by
Level 10

There are many such examples available 

https://helpx.adobe.com/experience-manager/using/creating-htl-component.html

http://adobeaemclub.com/multifield-touch-ui-sightly-component/

But I would recommend you to use Sling API (Resource) instead of JCR API (Node) api.

View solution in original post

5 Replies

Avatar

Level 2

You can use javascript with slightly (html). In your JavaScript you have access to implicit objects such as PageManager, currentContent, currentSession etc. You need to create a function in your js file that returns the value such as page node etc. Once you have that then you can use slightly to pull the value from your javascript using helper object . Example of this can be found under the link below.

http://blogs.adobe.com/experiencedelivers/experience-management/htl-javascript-use-api/

Avatar

Correct answer by
Level 10

There are many such examples available 

https://helpx.adobe.com/experience-manager/using/creating-htl-component.html

http://adobeaemclub.com/multifield-touch-ui-sightly-component/

But I would recommend you to use Sling API (Resource) instead of JCR API (Node) api.

Avatar

Employee

Normally this goes via Java/Javascript, however I strongly advise against the Node.class api.

It is too low-level, better to use things like the ValueMap api

Avatar

Level 4

In JSP the below lines gives the node jcr:content, how to achieve similar thing in sightly. How to get Page from Node and iterate through the pages in sightly?? Can you please help.

 String path = "/content/usergenerated/jcr:content";

     Node node = currentPage.getContentResource().adaptTo(Node.class);
      String title = node.getName(); 
            out.println(title);

Avatar

Level 10

Use the Java Sling API and Java class that extends WCMUsePojo. You can use Java API to retrieve information about JCR resources like pages.