2016-09-29 81 views
1

我有一个字符串“products_2016-05-09”,其中2016-05-09是日期附加在字符串中。我想提取这个日期。如果日期是零下1天,我想显示字符串“产品”。我怎样才能用液体语法来做到这一点?提取字符串并与日期进行比较

回答

0

取出从string日期,使用removesplit过滤器:

{% assign pdate = string | remove: "products_" %} 
{% assign pdate = pdate | split: '-' %} 

要检查该产品的日期(pdate)为24小时(86400秒)内退,使用这样的:

{% assign today = "now" | date: "%s" %} 
{% assign yesterday = today | minus: 86400 %} 

{% if pdate[0] == yesterday | date: "%Y" and pdate[1] == yesterday | date: "%m" and pdate[2] == yesterday | date: "%d" %} 
    Display string "products" 
{% endif %} 

注意:这只有在产品日期为昨日(24小时前从现在开始),用于更精确的时间验证检查,您需要做更多的算术。您也可以使用JavaScript在前端完成所有这些操作。

+0

“产品” 部分仅仅是一个例子。该解决方案对我无效。 –

0

下面的代码为我工作:在字符串

{% assign var =  {{custom_attribute.${producttype}}} %} 

{% assign words = var | split: '_' %} 

{% assign yestDate = 'now' | date: "%s" | minus: 86400 | date: "%F" %} 

{% assign varDate = words[1] %} 

{% if varDate | convert: "date"  == yestDate %} 
Dynamic String {{words[0]}} 
{% else %} 
sorry! 
{% endif %}