是否可以通过服务器时间在EE中触发条件?基于时间的条件
{if servertime == 'midnight to 13:00'}
do this
{if:else}
do something else
{/if}
谢谢
是否可以通过服务器时间在EE中触发条件?基于时间的条件
{if servertime == 'midnight to 13:00'}
do this
{if:else}
do something else
{/if}
谢谢
当然,您可以使用基本条件的全局变量{current_time}
。以您的示例为例,我们将查看午夜到13:00之间的时间:
{if
'{current_time format="%H%i"}' >= '0000' AND
'{current_time format="%H%i"}' <= '1300'
}
It's between 00:00 and 13:00
{if:else}
It isn't.
{/if}
如果你不反对使用模板中的一个小PHP用户指南有一个基本的例子,让你去:http://expressionengine.com/user_guide/modules/channel/channel_entries.html#start-on
还有这个插件http://devot-ee.com/add-ons/cc-time-difference这可能会派上用场。
您还需要观看DST设置。解决这个问题的一个方法是使用FocusLab的主配置来修复它,以便自动处理DST。
只是为了重申Jean说的话 - 如果你正在做这样的事情,你需要确保你的DST(日光节约)被适当配置。
如果你不使用FocusLab配置 - 刚落,下面进入你的config.php文件(系统/ expressionengine /配置/)
$config['daylight_savings'] = ((bool) date('I')) ? 'y' : 'n';
这会为你动态排序。
对不起,我不太明白这一点。这是否自动执行EE的DST设置? – KSPR
是的 - 这会自动为你设置,这意味着你不必担心它。 – madebyhippo
太好了。谢谢。 – KSPR