Modx - Getresource按电视日期过滤

时间:2012-10-09 18:13:00

标签: modx-revolution

我正在尝试使用getResources根据日期类型的电视进行过滤。 我想创建一个允许我显示Future事件和过去事件的过滤器。

TVname = voucherdate

我所做的是:

使用以下内容创建当前日期代码段:

<?php
return date('Y-m-d H:i:s');

然后我创建了以下getResource:

当前事件

[[!getResources?
  ...
  &tvFilters=`voucherdate>=[[curDate]]`
]]

过去的活动

 [[!getResources?
      ...
      &tvFilters=`voucherdate<<[[curDate]]`
    ]]

但它似乎没有起作用。我已经通过在模板中调用[[curDate]]并显示当前日期来测试狙击手的工作位置。

任何人都可以提供一些建议。

感谢

1 个答案:

答案 0 :(得分:0)

所有模板变量都存储为字符串,因此您将不得不进行一些字符串比较.....这可能不会在getresources调用中起作用...

最好的办法是将日期字符串值传递给代码段并在那里进行日期比较,例如:

[[!getResources? ...
&tvFilters=`[[!DateCompare? &date=`[[*voucherdate]]` &range=`future|past` ]]  == 'true']]
]]

将日期转换为纪元或DateCompare片段中的内容并返回true或false ...然后getResources~应该〜返回正确的资源...我想,没有经过测试......我不会想到更容易脱离我的头顶。除非你想把你的日期最初存储为一个纪元价值... [无论如何会更好]然后你正在尝试的字符串比较“只是工作”