${ link @ extension = 'html' } if link is https://www.google.com/resources then the output is https://www.google.com/resources.html. This is not the expected behavior according to the documentation. Any help is appreciated. Thanks, Nikunj Jariwala
Solved! Go to Solution.
Views
Replies
Total Likes
If you want to remove the extension, you can use something like below:
${'https://www.google.com/resources' @ extension}
Views
Replies
Total Likes
As per my understanding and the sly documentation at [1], @Extension will add the extension to the path. So, this is working as expected.
URL manipulation
<a href="${item.path @ extension = 'html'}">${item.name}</a>
<a href="${item.path @ extension = 'html', selectors='products'}">${item.name}</a>
I tried the following on my side:
${'https://www.google.com/resources' @ extension='html'}
The output is below:
Views
Replies
Total Likes
https://docs.adobe.com/content/help/en/experience-manager-htl/using/htl/block-statements.html#sly-el... The documentation on this page says "The @Extension works in all scenarios in AEM 6.3, before you could have a result like www.adobe.com.html and also checks whether to add or not add the extension." The use case is that we dont want to add html to external links. Is that something which cannot be solved using @ extension?
Views
Replies
Total Likes
If you want to remove the extension, you can use something like below:
${'https://www.google.com/resources' @ extension}
Views
Replies
Total Likes
I do not think that HTL has such functionality to distinguish internal/external links. You will need to write something custom to handle case a use case. Take a look at this [1] to help you in creating this customization.
Views
Replies
Total Likes
Views
Likes
Replies
Views
Like
Replies