标签: htl

如何在Sightly/HTL中连接字符串?

我有以下代码:

<sly data-sly-use.link="${'core.impl.view.tools.LinkUtils' @ path=properties.targetURL}"></sly>
Run Code Online (Sandbox Code Playgroud)

我想连接properties.linkTypeproperties.targetURL.

有什么想法可以做到吗?我在网上找到了例子,但它们似乎不适用于我的用例.

sightly htl

8
推荐指数
2
解决办法
6541
查看次数

根据Rich Text小部件的输入在HTL中呈现电话链接

我有一个组件使用xtype="richtext"我的项目中的Rich Text Edit小部件(),它在整个站点中用作默认文本组件.

用户希望能够使用telURI方案将电话链接插入使用此组件输入的文本中.

该对话框允许他们这样做,但是当稍后在Sightly/HTL中呈现富文本编辑的内容时,将使用html上下文:

{$text @ context='html'}
Run Code Online (Sandbox Code Playgroud)

完成此操作后,将忽略my属性的值.

存储在存储库中的HTML是:

 <a href="tel:04242424242">Call us!</a>
Run Code Online (Sandbox Code Playgroud)

在作者实例的页面上实际呈现的是:

 <a>Call us!</a>
Run Code Online (Sandbox Code Playgroud)

在发布者上,由于链接检查器,标签会被完全删除.

更改上下文会unsafe导致href渲染,但这不是我愿意接受的解决方案.该组件在很多地方使用,我想确保XSS保护足够.

有没有办法影响htmlHTL中的上下文处理电话链接的方式?

我尝试在叠加层中添加一个额外的正则表达式apps/cq/xssprotection/config.xml:

<regexp name="onsiteURL" value="([\p{L}\p{N}\\\.\#@\$%\+&amp;;\-_~,\?=/!]+|\#(\w)+)"/>
<regexp name="offsiteURL" value="(\s)*((ht|f)tp(s?)://|mailto:)[\p{L}\p{N}]+[\p{L}\p{N}\p{Zs}\.\#@\$%\+&amp;;:\-_~,\?=/!]*(\s)*"/>
<regexp name="telephoneLink" value="tel:\+?[0-9]+"/>
Run Code Online (Sandbox Code Playgroud)

进一步说:

<attribute name="href">
    <regexp-list>
        <regexp name="onsiteURL"/>
        <regexp name="offsiteURL"/>
        <regexp name="telephoneLink"/>
    </regexp-list>
    <!-- Skipped for brevity -->
</attribute>
Run Code Online (Sandbox Code Playgroud)

但这似乎并没有影响Sightly/HTL在html上下文中转义字符串的方式.

我也试过覆盖Sling xss规则,/libs/sling/xss/config.xml但也没有运气.

怎么做到呢?

xss tel aem sightly htl

5
推荐指数
1
解决办法
1377
查看次数

如何在aem 6触摸对话框中创建单选按钮

我有一个触摸UI组件,我正在AEM 6中创建一个对话框.我需要在触摸对话框中创建2个单选按钮,如果其中任何一个被选中,则所选单选按钮的相应值应为显示.但是,我不了解如何创建单选按钮选项.我在经典对话框中实现了相同的选项,其中使用了xtype = selection和type = radiogroup,但我不明白如何在触摸对话框中创建它在此输入图像描述

dialog aem sightly htl

3
推荐指数
1
解决办法
1万
查看次数

HTL - 如何在另一个页面上显示一个页面,如popup/modal

我正在尝试使用现有页面(使用TouchUI的路径浏览器选择)作为我的HTL页面上的弹出/模态.是否有一种方法可以使用不同的文件添加/注入HTML?它更关于在页面上播放html而不是如何构建对话窗口.

adobe aem sightly htl

3
推荐指数
1
解决办法
1312
查看次数

AEM HTL / Sightly 日期格式化程序中需要的日期类型

我已经看到,从 AEM 6.3 开始,标记本身就支持日期格式,如下所示:

${ 'dd~MMMM-yyyy' @ format=currentPage.jcr:created }
Run Code Online (Sandbox Code Playgroud)

(参考:https : //github.com/adobe/htl-spec/blob/master/SPECIFICATION.md#1222-dates

我尝试使用该 jcr:created 属性以及来自后端的数据来玩这个格式化程序java.util.Date

我的问题是,是否支持其他日期类型?比如说,java.time.LocalDate?它没有显示在我的测试页面上,虽然我不确定我是否只是缺少一些需要在 HTL 标记上指出的附加属性?

format date aem sightly htl

3
推荐指数
1
解决办法
1842
查看次数

当data-sly-test评估为false时保留子元素?

检查这个

<a href="${mybean.href}" data-sly-test="${mybean.href}">
  <img src="myimage.jpg" />
</a>
Run Code Online (Sandbox Code Playgroud)

我们需要的

当data-sly-test =“ $ {mybean.href}”计算为false时,仅隐藏锚标记,而不隐藏其子元素。默认行为是,当锚标记消失时,img标记也会消失。我们只想隐藏包装标签。

我希望这样的参数

<a href="${mybean.href}" data-sly-test="${mybean.href @ hideChildren=false}">
  <img src="myimage.jpg" />
</a>
Run Code Online (Sandbox Code Playgroud)

sling aem sightly htl

2
推荐指数
1
解决办法
290
查看次数

AEM:如何以相反的顺序迭代HTL列表?

使用data-sly-list,元素按顺序打印.

在HTL中是否有一种方法可以用相反的顺序打印列表项?

例如

如果列表包含1,2,3,4我想打印4,3,2,1.

aem htl

2
推荐指数
1
解决办法
480
查看次数

AEM如何重用变量

我可以在我包含的另一个文件中使用变量吗?

在我的HTL(file1.html)我有:

<sly data-sly-test.myVar="${properties.myVarFromDialog}"></sly>
<sly data-sly-include="/file2.html"></sly>
Run Code Online (Sandbox Code Playgroud)

我可以在file2.html中使用myVar吗?我没有任何价值.有没有办法从file1.html获取该值以在file2.html中使用

adobe aem sightly htl

2
推荐指数
1
解决办法
2622
查看次数

将参数传递给数据狡猾 - 包含在sightly/HTL中

我有一段Sightly/HTL代码如下 -

<div class="tooltip_modal">
  <div class="modal-content">
    <div class="modal-header">
      <span class="close">&times;</span>
      <h5>Tooltip</h5>
    </div>
    <div class="modal-body">
      <p>${properties.tooltip_textfield}</p>
    </div>
  </div>
</div>
Run Code Online (Sandbox Code Playgroud)

请注意,${properties.tooltip_textfield}硬编码到代码中.我将此代码包含在我的组件中,如下所示 -

<div data-sly-include="/custom/tooltip-modal/tooltip-modal.html" data-sly-unwrap></div>
Run Code Online (Sandbox Code Playgroud)

现在我想将一个参数传递给data-sly-include语句,这样当我的HTML代码被渲染时,应该放置传递的参数来代替${properties.tooltip_textfield}.

换一种说法 -

打电话给这个

<div data-sly-include="/custom/tooltip-modal/tooltip-modal.html" parameter= "Dummy Text" data-sly-unwrap></div>
Run Code Online (Sandbox Code Playgroud)

应该呈现这个 -

<div class="tooltip_modal">
      <div class="modal-content">
        <div class="modal-header">
          <span class="close">&times;</span>
          <h5>Tooltip</h5>
        </div>
        <div class="modal-body">
          <p>Dummy Text</p>
        </div>
      </div>
    </div>
Run Code Online (Sandbox Code Playgroud)

这可能吗?提前致谢!

aem sightly htl

2
推荐指数
1
解决办法
3815
查看次数

在AEM 6.2的Sightly中,样式元素内的运行时变量未解析

我试图通过创建一个变量来为div提供背景图像。

我正在仔细阅读属性,将其提供给样式标签时,它不起作用。

这是HTML

<sly data-sly-test.fileReference="${properties.title}" />

<div style="background: url(${fileReference}); background-position: center top;">
<p>${properties.title}</p>
Run Code Online (Sandbox Code Playgroud)

呈现页面后,这就是我所看到的

<div style="background: url(); background-position: center top;">
<p>my Title</p></div>
Run Code Online (Sandbox Code Playgroud)

这意味着${properties.title}内部<p>标签被接受,但不适用于内部样式元素。

html css aem sightly htl

1
推荐指数
1
解决办法
1697
查看次数

标签 统计

htl ×10

aem ×9

sightly ×9

adobe ×2

css ×1

date ×1

dialog ×1

format ×1

html ×1

sling ×1

tel ×1

xss ×1