Как вывести в профиле зарегистрированного пользователя сколько дней он уже на сайте?
Пример:
На сайте 1,080 дней.
Как вывести в профиле зарегистрированного пользователя сколько дней он уже на сайте?
Пример:
На сайте 1,080 дней.
Нужно вносить изменения в экшен profile.php в компоненте узерс
После строки:
// Формируем метатеги
$meta_profile = $this->prepareItemSeo($profile, $fields, ['name' => 'users']);
вставляешь приблизительно такое:
if($this->cms_user->is_admin){$sys_fields['hostname'] = ['title' => 'Домен', 'text' => gethostbyaddr($sys_fields['ip']['text']) ];}
Не пойму, зачем это ТС, если над списком полей профиля уже выводится, сколько прошло дней с момента регистрации пользователя.
Совет выше плохой, править файлы движка неправильно. Тем более в движке на каждый чих есть возможность подключить свой хук.
В качестве примера сделал компонент, который, если включен вывод даты регистрации
Заменит ее на нужное ТС
Если что-то пошло не так, отключите компонент
И все вернется на круги своя
Подобным образом можно добавить/изменить другие системные поля. Сработает только на modern, в default эти поля, насколько я помню, выводятся прямо в шаблоне, и хуком не меняются.
Хорошее решение. Я не знал, что так можно.
На моем шаблоне не прокатило. Сейчас попробую дату перенести из модерн шаблона на свой.
Ну так просто удобней. Зашел на профиль пользователя и сразу видно сколько дней, иногда с этими датами запаришься. Тем более я использую Американский вывод даты, месяц/день/год. И много сижу на Русских сайтах. Иногда мозг парится. Именно по этому такого вопроса ни у кого не возникло.
Поковырялся немного в системных файлах юзера. Не знал что в Модерн уже так выводится. Поменял у себя в шаблоне:
<span class=«date_reg»>User since <?php echo html_date($profile['date_reg']); ?></span>
На: В днях, месяцах, годах
<span class=«date_reg»>On site: <?php echo string_date_age_max($profile['date_reg']); ?></span>
Спасибо! Теперь как надо.
Или пример Zau4man Только в днях:
<span data-toggle=«tooltip» class=«date_reg» title=«Since registration»>On site: <?php echo floor((time() — strtotime($profile['date_reg']))/(60 * 60 * 24)); ?> days</span>