将可变参数插入Silverstripe模板的函数?

时间:2012-02-16 15:54:37

标签: templates silverstripe

我正在使用来自balbus设计的pagination example。在 .ss 模板中,有一行代码:

<% control ProductList.PaginationSummary(5) %>

是否可以使用变量而不是对值5进行硬编码?例如:

<% control ProductList.PaginationSummary(PSSize) %>

变量PSSize在模型中定义,并将返回CMS中设置的数字。

1 个答案:

答案 0 :(得分:3)

SS 2.4模板语言的功能非常有限。

在这种特定情况下,您可以尝试在控制器中进行操作 - 尝试调整$resultSet中的ProductListPage_Controller::ProductList以将分页摘要预处理到所需的上下文大小,以便稍后可以从模板。

尝试类似的东西:

$resultSet->AdjustedPaginationSummary = $resultSet->PaginationSummary($this->productsPerPage);
return $resultSet;

然后在模板中你应该能够做到:

<% control ProductList.AdjustedPaginationSummary %>