【发布时间】:2019-04-28 20:03:02
【问题描述】:
我正在使用撇号图像在我的页面中插入图像。 当这个小部件被渲染时,有一个带有标题的标题 h4。 我想删除它。 谢谢
【问题讨论】:
标签: apostrophe-cms
我正在使用撇号图像在我的页面中插入图像。 当这个小部件被渲染时,有一个带有标题的标题 h4。 我想删除它。 谢谢
【问题讨论】:
标签: apostrophe-cms
我过去用 CSS 做过这个:
.apos-slideshow h4 { display: none; }
但是,您可以扩展图像小部件并在新模板中扩展 widget.html 扩展:
{% extends 'widgetBase.html' %}
然后覆盖标题栏,放入一个条件(我认为这实际上应该在基础中!):
{%- block title -%}{% if data.widget.hideTitle %}<h4>{{ image.title }}</h4>{% endif %}{%- endblock -%}
这将让您在新的小部件中指定隐藏它,即:
{{ apos.singleton(data.page, 'logoHeader', 'apostrophe-images', {
limit: 1,
minSize: [ 100, 100 ],
addLabel: 'Set header logo',
editLabel: 'Change header logo',
hideTitle: true,
controls: {
movable: false,
removable: false,
position: 'bottom-right'
}
})
}}
...当然,css方式更快!
【讨论】:
data.widget.hideTitle。给定的示例可能有效,因为它是逻辑错误:“如果 data.widget.hideTitle 是 data.options.hideTitle,所以正确的块是{%- block title -%}{%- if data.options.hideTitle -%}{%- else -%}<h4>{{ image.title }}</h4>{%- endif -%}{%- endblock -%}。 (请务必使用%- 语法省略不必要的空格和换行符)
我有类似的问题,我想在某些模块中隐藏图像标题,但在其他模块中设置不同的样式。
现在有一个类 .apos-image-widget-image-title 应用于撇号图像 h4,您可以使用它来根据需要设置标题样式。
也可以覆盖@bionara 的回答中提到的撇号图像模板,我想如果您想对所有图像小部件进行站点范围内的更改,这就是要走的路。
【讨论】: