Здравствуйте, друзья !
Использую модуль Calendar, чтобы отображать список родившихся исполнителей в тот или иной день. В модуле календарь есть предустановочные шаблоны во views, в том числе и шаблон upcoming events, когда события выводятся списком заголовком и датами. Не могу понять как сделать, чтобы вместо сегодняшней даты, допустим 24 февраля, было слово "сегодня". Можно ли это сделать во views ?
Комментарии
Неужели никто не сталкивался?
Спасибо за ответ. Php к сожалению не знаю. Я думал что можно как то условие проверки в фильтрах views создать...
«2. Изменить шаблон необходимого поля во вьювсе, где так же сравнивать значения дат и выводить нужное по условию»
Как я понял это можно как-то сделать в фильтре. В шаблоне в фильтрах там стоит ">=now". Т.е. выводит с сегодняшней даты и далее. Пытался добавить группу фильтров чтобы была проверка = now, но запутался и/или и где подменять дату на слово.
т.е. допустим в поле Содержимое: events ? А как же там условие задать ? Как я понимаю, перезаписать результаты, галка "заменить выводимое полем значение"...и подстановочные шаблоны с заголовком и содержимым.
Спасибо. С php я пока не дружу, значит пока никак (.
Если вдруг кто найдет решение, поделитесь подробностями, модуль то популярный)
Возвращаясь к старой нерешенной проблеме. В модуле календарь, есть upcoming block. Выводит он события вот в таком виде [img]http://storage8.static.itmages.com/i/17/0301/h_1488378827_3780256_eb13ed.... Сегодняшняя дата 1 марта. И я хочу чтобы вместо даты 1 марта было слово "Сегодня". Так как поля группируются во views в неформатированном списке, я использую для темизации шаблон views-view-list--events--block-2.tpl.php
В нем пишу [img]http://storage4.static.itmages.com/i/17/0301/h_1488378378_2218684_c3e349...
где view->result[0]->field_data_field_events_field_events_value как я выяснил через devel - это дата в виде: 2017-03-01 00:00:00, я ее сравниваю с текущей датой, если совпадает, то title (Это заголовок группирующего поля - заменить на слово "Сегодня"). В результате он все заголовки меняет на "сегодня".
[img]http://storage5.static.itmages.com/i/17/0301/h_1488378742_6866222_8199d4...
Подскажите, в чем может быть косяк? Почему не работает условие?
Косяк в логике. При формировании каждого группирующегося по дате списка вы сравниваете текущую дату с датой ПЕРВОГО списка.
Похоже что да. result[0] - это же действительно первый список. А как сделать проверку по всем спискам?
Попробовал через foreach
<?php
dpm($view);
$date=date("Y-m-d 00:00:00");
foreach ($view->result as $id => $today) :
if ($today == $date) : $title = 'Cегодня';
endif;
endforeach;
print $title;?>
Не срабатывает. Рисует даты.
+++
Логичнее вот так:
<?php
$date=date("Y-m-d 00:00:00");
dpm($view);
foreach ($view->result as $val) :
$today=$val->field_data_field_events_field_events_value;
if ($today == $date) : $title = 'Cегодня';
endif;
endforeach;
print $title;
?>
Но тоже мимо...
Тут еще какой момент, $title - Это вывод групирующего поля даты: 3 марта, 4 марта, 5 марта, 6 марта а под ним события к этой дате. Всего 10 событий на выходе. Так вот devel выводит сколько дат столько он и повторяет выводов. Притом запрос dpm не в цикле.
И в каждом выводе по 10 событий
И уже в каждом событии уже дата:
Получается в каждом из 4 выводов (группировки поля) он начинает проверять с первой события сегодняшней даты. Может быть поэтому на каждую группировку он пишет "сегодня" ?
Как пофиксить можно это?