Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/reporting-services/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apostrophe cms 在选项卡菜单中获取附件字段属性_Apostrophe Cms - Fatal编程技术网

Apostrophe cms 在选项卡菜单中获取附件字段属性

Apostrophe cms 在选项卡菜单中获取附件字段属性,apostrophe-cms,Apostrophe Cms,因此,我试图通过使用最简单的菜单,通过选项卡向每个菜单项添加一个自定义图标,但在每个页面中添加一个名为“图标”的附件字段 调用图标附件字段的url的正确方法是什么 以下是最简单的视图: <ul class="b2b-menu"> {% for tab in data.home._children %} <li class="move-link"> <a>

因此,我试图通过使用最简单的菜单,通过选项卡向每个菜单项添加一个自定义图标,但在每个页面中添加一个名为“图标”的附件字段

调用图标附件字段的url的正确方法是什么

以下是最简单的视图:

<ul class="b2b-menu">
          {% for tab in data.home._children %}
              <li class="move-link">
                  <a>
                   <img alt="Page Icon" src="{{ apos.attachments.url(attachment) }}" width="48" height="48" />
                   <span>{{ tab.title }}</span>
                   </a>
               </li>
            {% endfor %}
      </ul>

我可以看到tab.icon作为一个对象存在。但我就是不知道如何获取URL。像标签图标之类的东西。。似乎不是正确的方法。

您可以这样做:

{% if tab.icon %}
  <img src="{{ apos.attachments.url(tab.icon, { size: 'one-sixth' }) }}" />
{% endif %}
{%if tab.icon%}
{%endif%}
此处的
选项卡
变量假定您正在
for
循环中粘贴此代码,该循环已经引入了此代码

apos.attachments.url
helper函数接受一个附件和一个选项对象,并返回一个url,无论您是使用带有本地存储、S3还是其他内容的上传,该url都是正确的

对于图像,如果未指定
大小
选项,则将获得
完整
大小。这是一种防止意外使用原始文件的保护措施,它会导致带宽问题,并会让用户误以为撇号不能提供合理的缩放尺寸。要使用原件(我们不推荐),请将
大小设置为
原件


对于其他类型的附件(即,
撇号文件
),您不需要使用大小选项,因为直接链接到文件是唯一明智的选择。

虽然欢迎使用此代码片段,并可能提供一些帮助,但这将是解决问题的方式和原因。记住,你是在将来回答读者的问题,而不仅仅是现在提问的人!请在回答中添加解释,并说明适用的限制和假设。解释:选项卡是for循环中的名称,指的是对象和图标,它是要渲染的选定字段。完全正确,我最初的回答太多了。添加了详细信息。
{% if tab.icon %}
  <img src="{{ apos.attachments.url(tab.icon, { size: 'one-sixth' }) }}" />
{% endif %}