С наступающим, коллеги!
Ежегодное поздравление с Днём программиста, с корректным учётом високосных годов.
Шорткод для WorrdPress:
Ежегодное поздравление с Днём программиста, с корректным учётом високосных годов.
Шорткод для WorrdPress:
PHP:
function day_of_programmer_shortcode() {
// Устанавливаем временную зону на Московское время
date_default_timezone_set('Europe/Moscow');
// Получаем текущую дату
$current_date = new DateTime();
$current_year = $current_date->format('Y');
// Определяем дату Дня программиста для текущего года
if (($current_year % 4 == 0 && $current_year % 100 != 0) || ($current_year % 400 == 0)) {
// Високосный год
$day_of_programmer = new DateTime("$current_year-09-12");
} else {
// Невисокосный год
$day_of_programmer = new DateTime("$current_year-09-13");
}
// Устанавливаем начало и конец отображения поздравления
$start_date = clone $day_of_programmer;
$end_date = clone $day_of_programmer;
$end_date->modify('+1 day');
// Проверяем, находится ли текущая дата в пределах Дня программиста
if ($current_date >= $start_date && $current_date < $end_date) {
return '<div class="day-of-programmer-message">Поздравляем с Днем программиста!</div>';
}
return ''; // Если не День программиста, ничего не выводим
}
// Регистрируем шорткод
add_shortcode('day_of_programmer', 'day_of_programmer_shortcode');