【问题标题】:Modx - Getresource filter by TV dateModx - 按电视日期获取资源过滤器
【发布时间】:2012-10-09 18:12:59
【问题描述】:

我正在尝试使用 getResources 根据日期类型的电视进行过滤。 我想创建一个过滤器,让我可以显示未来事件和过去事件。

电视名称 = voucherdate

我所做的是:

使用以下内容创建当前日期 sn-p:

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

然后我创建了以下getResource:

时事

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

往事

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

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

谁能给点建议。

谢谢

【问题讨论】:

    标签: modx-revolution


    【解决方案1】:

    你所有的模板变量都存储为字符串,所以你将不得不做一些字符串比较.....这可能在 getresources 调用中不起作用......

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

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

    将您的日期转换为纪元或 DateCompare sn-pt 中的某些内容并返回真或假...然后 getResources ~should~ 返回正确的资源...我认为,未经测试...我不认为一个更简单的方法离开我的头顶。除非您最初想将日期存储为纪元值... [无论如何都会更好] 然后您尝试的字符串比较将“正常工作”

    【讨论】:

    • 嗨,肖恩,感谢您的评论。我应该提到我对 PHP 一无所知,我只是从各种资源中将这些位串在一起。无论如何,你可以帮我改正狙击手
    猜你喜欢
    • 2015-06-18
    • 1970-01-01
    • 2011-06-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-05
    • 1970-01-01
    • 2017-02-13
    相关资源
    最近更新 更多