AEM HTL/将URL中的字符串连接起来,以便在新窗口中的lightbox或PDF中播放视频

AEM HTL/将URL中的字符串连接起来,以便在新窗口中的lightbox或PDF中播放视频,aem,sightly,htl,Aem,Sightly,Htl,我是Sightly和AEM开发的新手,我正在尝试连接以下字符串href,以便在lightbox中播放视频或在新窗口中打开PDF。由于我正在努力使这项工作的任何建议将不胜感激 <sly data-sly-test="${details.videoPlayingOptions != 'vlp-video'}"> <a href="${details.pagePath} || '#' || '${gatherInsight.videoLandingPagePath}?v

我是Sightly和AEM开发的新手,我正在尝试连接以下字符串href,以便在lightbox中播放视频或在新窗口中打开PDF。由于我正在努力使这项工作的任何建议将不胜感激

 <sly data-sly-test="${details.videoPlayingOptions != 'vlp-video'}">
      <a href="${details.pagePath} || '#' || '${gatherInsight.videoLandingPagePath}?vid=${details.videoID}'" class="cta-lightbox" data-videoid="${details.videoID}" target="${details.contentType == 'PDF' ? '_blank' : '_self'}">${details.title}</a>
 </sly>


谢谢

在HTL/sighly中没有使用| |进行字符串连接,因为您的代码尝试这样做,这只用于

您应该使用,因为它使代码更具可读性:

href="${details.pagePath @ fragment=gatherInsight.videoLandingPagePath, query=details.videoIDQuery, context='uri'}"
如果将查询映射添加到use对象不是一个选项,则可以尝试使用
data-sly-test
连接字符串:

data-sly-test.videoURL="${details.pagePath}#${gatherInsight.videoLandingPagePath}?vid=${details.videoID}" href="${videoURL @ context='uri'}"

在HTL/sighly中,字符串连接不能用| |来完成,因为代码尝试使用| |来实现,它只用于

您应该使用,因为它使代码更具可读性:

href="${details.pagePath @ fragment=gatherInsight.videoLandingPagePath, query=details.videoIDQuery, context='uri'}"
如果将查询映射添加到use对象不是一个选项,则可以尝试使用
data-sly-test
连接字符串:

data-sly-test.videoURL="${details.pagePath}#${gatherInsight.videoLandingPagePath}?vid=${details.videoID}" href="${videoURL @ context='uri'}"

伟大的我试试这个。非常感谢。这就像一个符咒!!非常感谢。感谢您共享文档资源!嗨,在PDF的例子中,似乎是视频发布的lighbox。如果用户打开的是PDF文件,有没有办法绕过lightbox?@Reading_代码似乎是特定于您的组件的,太棒了!我试试这个。非常感谢。这就像一个符咒!!非常感谢。感谢您共享文档资源!嗨,在PDF的例子中,似乎是视频发布的lighbox。如果用户打开的是PDF文件,有没有办法绕过lightbox?@读取组件特有的代码