У меня есть сайт expressionengine, и я хочу создать новостной шаблон, который заполняется всего одним годом. Следующий код действительно работает и заполняет страницу правильным годом историй.
<?$date = strtotime('{current_time format="%Y"} -1 year');?>
{exp:channel:entries channel="news" start_on="<?echo date('Y', $date);?>-12-31 20:00" dynamic="no"}
НО в январе и феврале я не буду иметь много сообщений на странице, поэтому я хочу что-то вроде:
{if '{current_time format="%M"} = "Jan"'}
<?$date = strtotime('{current_time format="%Y"} -2 year');?>
{exp:channel:entries channel="news" start_on="<?echo date('Y', $date);?>-12-31 20:00" dynamic="no"}
{if:else}
<?$date = strtotime('{current_time format="%Y"} -1 year');?>
{exp:channel:entries channel="news" start_on="<?echo date('Y', $date);?>-12-31 20:00" dynamic="no"}
{/if}
Я не могу представить PHP для текущего текущего времени = Jan
Согласно документации, найденной здесь, https://ellislab.com/expressionengine/user-guide/templates/date_variable_formatting.html
Вы должны использовать
{if {current_time format="%M"} == "Jan"}
{if '{current_time format="%M"} == "Jan"'} <p>Month is January</p> {if:else} <p>Month is not January</p> {/if}
Если я изменю «январь» на «февраль», код все равно выдаст «месяц - январь»
{current_time format="%F %d %Y"}
Это будет отображаться как 8 января 2015