apostrophe-cms - 如何在'apos.area'内的html标签中包装撇号小部件?
问题描述
我想用自定义标签包装由 apos.area 生成的小部件以改善 SEO。
<ul>
{{ apos.area(data.page, 'links', {
widgets: {
'internal-link': {},
'external-link': {}
}
}) }}
</ul>
在这个例子中,我用ul标签包裹了 apos.area,但是我传递的小部件在它们的模板中没有li标签。
有没有办法强制每个小部件都包含在自定义 html 标记中?
解决方案
Apostrophe 将围绕这些小部件中的每一个包装标记,这些小部件充其量是您不关心的,而在最坏的情况下会破坏您的语义。
为了完全控制这个标记,我将制作一个更通用的link
小部件,其中包括内部和外部链接类型的模式选项。然后在您的页面中,widget.html
您可以打印出语义正确的链接列表及其各种属性。
如果您的internal-link
和external-link
小部件已经在您的站点中广泛使用,您可以只制作一个包装小部件,在模式中包含它们的单例。
推荐阅读
- python - 您如何获取键的值并将其添加到列表中?
- html - 有什么方法可以在树枝模板中制作网格样式列表?
- geolocation - 地理位置搜索功能
- javascript - 如何使用 jest 的参数测试请求 http - 角度
- api - Flutter POST 请求问题
- sql - Oracle sql按包含符号的列排序
- javascript - 未处理的拒绝(TypeError):无法读取未定义的属性“推送”
- forms - 我有一个 Web 表单,在尝试保存文档时不会保存输入
- r - depmixS4 HMM拟合中出现NA/NaN/Inf错误时如何继续循环?
- azure-devops - 如何将复杂的 DevOps 管道模板参数传递给脚本