2

Hubspot 内置于 jinja 中,并提供了一个有限且定制的 jinja 库供其开发人员使用。没有可用的服务器端访问,python 在它的模板中不起作用

你好,

我想知道是否可以将变量添加到博客数据中。

目前要构建一个博客列表页面,您需要设置一个 for 循环

`{% for content in contents %}

{% endfor %}`

然后你会调用在博客文章的不同部分调用的变量

{{ content.foo ))

这些变量适用于已经并且始终包含在 hubspot 博客文章中的元素,例如

作者日期标题摘要绝对链接等

但是是否可以添加到这些变量中。例如,假设我在博客文章模板中添加了一个图像模块。有没有办法在列表页面上访问它?

我实际上想要做的是允许选项根据我在博客文章模板上设置的选择模块在一列或两列中显示任何列表项。如果在创建博客文章时选择 1 列或 2 列,则列表页面上循环内的包装器中的类将相应更改。

我遇到的问题是,虽然选择模块值可用于列表页面模板(在博客模板上的 hubl 模板模块中,而不是在博客文章模板中),并且选择下拉菜单在博客编辑模板​​上并且可以做出选择并保存,列表页面只识别默认选择,而不是在博客编辑器中选择的选择。

写到一半时,我决定将选择模块从主博客模板移动到博客页面模板,现在选择的变量对列表页面不可用。将选项模块保留在博客页面模板之外的主博客模板中,使选项变量可用,但不能由博客单独使用。因为在博客上选择的选项不是按博客保存的,所以只有默认选项可用。

如果有办法将它添加到内容变量中,这样您就可以执行类似的操作,那就太好了

{{ content.widget_data.foo.value }}

在内容循环中,使博客文章的个人选择可用。

有任何想法吗?

4

1 回答 1

1

我回答了我自己的问题。

我使用了开发人员信息(我必须使用代码美化器和页面内搜索),但我在每个帖子的数据中找到了选择小部件。

我期待它是这样的

{{ content.widget_data.foo.value }}

因为这就是它在页面上的工作方式(减去内容。),但它最终是

{{ content.widgets.foo.body.value }}

它现在正在输出每个帖子所做的选择。

如果这对其他人有帮助,我想提一下,选择模块实际上放置在博客页面模板中(不是主博客模板或列表模板)。

这可以适用于任何模块,自定义或其他。您只需要在数据中找到它并相应地定位即可。

我的数据看起来像:

"contents": {
"objects": [{
"widgets": {
"columns": {
"css": {},
"child_css": {},
"name": "foo",
"type": "choice",
"label": "Choose Columns",
"smart_type": null,
"id": "columns",
"body": {
"value": "col-wrap-2"
}
}
},
于 2016-08-12T20:11:30.710 回答