在特定布局上我想使用Poplets,但它们不可用。 目前我使用module_data将它们拉进去,但它对网站的影响太大了。 我只需要前2个Poplet图像(如果一个图像与 largeImage 相同)。
{module_data resource="products" resourceId="{{id}}" version="v3" fields="id,poplets" skip="0" limit="5" collection="prodPoplets"}
{% assign popletUrls = prodPoplets.poplets | split: ";" -%}
{% capture BackPopletUrl -%}
{% if popletUrls[0] != "" -%}
{% if largeImageUrl == popletUrls[0] -%}{{popletUrls[1]}}{% else -%}{{popletUrls[0]}}{% endif -%}
{% endif -%}
{% endcapture -%}
我想在加载页面后加载前2个popletUrls,因为无论如何它都显示在悬停状态。
我将使用它来加速有问题的网站,只是想要掌握这个。
我正在使用Business Catalyst - 我在文档中找到了这个,但我仍然不确定我应该做什么 - https://docs.worldsecuresystems.com/developers/liquid/consuming-apis-in-the-front-end-using-module_data#TheResourceparameter
答案 0 :(得分:0)
您可以像这样执行ajax请求,而不是调用module_data:
var request = $.ajax({
url: "/webresources/api/v3/sites/current/products?fields=id,poplets&skip=0&limit=10&order=id",
type: "GET",
contentType: "application/json",
headers: {
"Authorization": BCAPI.Helper.Site.getAccessToken()
}
});
request.done(function(data) {
console.log(data);
//here you access all your data
})
request.fail(function(jqXHR) {
console.log("Request failed.");
console.log("Error code: " + jqXHR.status);
console.log("Error text: " + jqXHR.statusText);
console.log("Response text: " + jqXHR.responseText);
})
确保您已授权API调用,如此处的Business Catalyst文档所示 - Pagination
答案 1 :(得分:0)
您可以指定仅拉取前两个poplet。您的module_data标记为{module_data resource="products" resourceId="{{id}}" version="v3" fields="id, popletImage1, popletImage2" skip="0" limit="5" collection="prodPoplets"}