2012-11-05 8 views
8

È possibile attivare un condizionale in EE tramite l'ora del server?condizionale in base all'ora

{if servertime == 'midnight to 13:00'} 
     do this 
{if:else} 
     do something else 
{/if} 

Grazie

risposta

7

Certo, è possibile utilizzare la variabile globale {current_time} per i condizionali di base. Per utilizzare il vostro esempio, ecco come avremmo Verificare che il tempo di tra la mezzanotte e le 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} 
+0

Così bello. Grazie. – KSPR

1

Avrai bisogno di guardare la vostra impostazione DST troppo. Un modo per aggirare questo sarà utilizzare la Master Config di FocusLab che la risolve in modo che il DST venga gestito automaticamente.

3

Giusto per ripetere ciò che Jean ha detto: se si sta facendo qualcosa del genere, è necessario assicurarsi che il proprio DST (Day Light Saving) sia configurato correttamente.

Se non si sta usando FocusLab Config - basta semplicemente inserire il seguente nel file config.php (nel sistema/ExpressionEngine/config /)

$config['daylight_savings'] = ((bool) date('I')) ? 'y' : 'n'; 

Che sarà risolto tutto per voi in modo dinamico.

+0

Scusa, non lo capisco del tutto. Questo automatizza l'impostazione dell'ora legale di EE? – KSPR

+0

Sì - questo lo imposta automaticamente per te, il che significa che non devi preoccuparti di questo. – madebyhippo