Как настроить автоматическую смену даты с помощью скрипта

Константин Булгаков
Константин Булгаков
14 Янв.2023
Сегодня поделюсь небольшим JS-скриптом, который легко поможет реализовать автосмену даты на сайте для разных задач.

Иногда требуется реализовать автоматическое обновление даты в статьях, вакансиях или различных маркетинговых офферах. Сценариев может быть много.

Приведу такой пример. Нужно уведомить пользователей, что скидочная акция закончится через три дня. Причем важно, чтобы дата окончания предложения сдвигалась и менялась каждый день на следующую.

Или обратный пример. Вы разместили публикацию в блоге. Чтобы материал выглядел как «свежий» нужно настроить обновление так, чтобы дата публикации всегда показывала два дня назад.

Есть скрипт на JavaScript, который поможет решить задачу.

<script type="text/javascript">
var    Data = new Date(),
         TwoDay = new Date();
TwoDay.setDate(Data.getDate()-2);
Month = TwoDay.getMonth();
Day = TwoDay.getDate();
Year = TwoDay.getFullYear();

var zMonth = ("0" + (Month+1)).slice(-2);
var zDate =  ("0" + (Day)).slice(-2);

switch (Month)
{
  case 0: fMonth="января"; break;
  case 1: fMonth="февраля"; break;
  case 2: fMonth="марта"; break;
  case 3: fMonth="апреля"; break;
  case 4: fMonth="мая"; break;
  case 5: fMonth="июня"; break;
  case 6: fMonth="июля"; break;
  case 7: fMonth="августа"; break;
  case 8: fMonth="сентября"; break;
  case 9: fMonth="октября"; break;
  case 10: fMonth="ноября"; break;
  case 11: fMonth="декабря"; break;
}
$('#rec525473228 .tn-elem[data-elem-id="16354300976821"] .tn-atom').html('Опубликовано '+Day+' '+fMonth+' ');
</script> 

Этот скрипт я использую для страниц на Тильде. Код всегда выводит дату публикации материала позавчерашним числом.

Чтобы скрипт заработал в Тильде, его нужно вставить в блок «Другое Т123». Скрипт также можно использовать для сайтов на CMS WordPress, 1C-Bitrix и другие.

Только не забудьте в последней строчке скрипта указать свой CSS-селектор текстового элемента, в котором будет происходить смена даты.

Если нужно, чтобы менялась дата в будущем, например всегда выводилась дата на 3 дня вперед, то в строчке TwoDay.setDate(Data.getDate()-2); значение -2 нужно поменять на +3, получится TwoDay.setDate(Data.getDate()+3);.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *