/ Адаптивность / Манипуляции с датами

Манипуляции с датами

HIT

Русскоязычный формат дней недели и месяцев

Добавляем на сайт функцию, которая приводит вывод даты (месяцы, дни недели) в человеческий вид.
Помещаем в файл functions

function dateToRussian($date) {
    $month = array("january"=>"января", "february"=>"февраля", "march"=>"марта", "april"=>"апреля", "may"=>"мая", "june"=>"июня", "july"=>"июля", "august"=>"августа", "september"=>"сентября", "october"=>"октября", "november"=>"ноября", "december"=>"декабря");
    $days = array("monday"=>"Понедельник", "tuesday"=>"Вторник", "wednesday"=>"Среда", "thursday"=>"Четверг", "friday"=>"Пятница", "saturday"=>"Суббота", "sunday"=>"Воскресенье");
    return str_replace(array_merge(array_keys($month), array_keys($days)), array_merge($month, $days), strtolower($date));
}

вывод:

<?php echo 'Сегодня '.dateToRussian(date('l, j F Y')).' года'; ?>

если нужна дата поста, то:

<?php echo dateToRussian(get_the_date()); ?>

Вывод даты в стиле twitter (4 дня назад)

<?php echo human_time_diff(get_the_time('U'), current_time('timestamp')) . ' назад'; ?>

Определение выходных

Простая проверка на субботу и воскресенье:

$weekday = date("l");
if ($weekday =="Saturday" OR $weekday =="Sunday") { echo 'выходной'; } 
else { echo 'рабочий день'; }

Эта же проверка в jQuery:

var today = new Date();
if(today.getDay() == 6 || today.getDay() == 0) { alert ('выходной'); }
else { alert ('рабочий день'); }

Определение рабочих часов

$hour = date("G") + 3; //корректировка серверного времени
if ($hour >= 9 && $hour < 18) {	echo 'рабочие часы'; } 
else { echo 'НЕ рабочие часы'; }

jQuery только будущие или прошлые даты

Только прошлые даты:

$(function(){
    var dtToday = new Date();

    var month = dtToday.getMonth() + 1;
    var day = dtToday.getDate();
    var year = dtToday.getFullYear();

    if(month < 10)
        month = '0' + month.toString();
    if(day < 10)
        day = '0' + day.toString();

    var maxDate = year + '-' + month + '-' + day;    
    $('#delivery_date').attr('max', maxDate);
});

Только будущие даты:

$(function(){
    var dtToday = new Date();

    var month = dtToday.getMonth() + 1;
    var day = dtToday.getDate() + 1; // +1 блокирует и сегодняшний день
    var year = dtToday.getFullYear();

    if(month < 10)
        month = '0' + month.toString();
    if(day < 10)
        day = '0' + day.toString();

    var minDate = year + '-' + month + '-' + day;    
    $('#delivery_date').attr('min', minDate);
});

Если дата еще не наступила

Можно до наступления даты выводить один контент, а после наступления даты другой.

<?php $date_now = date("Y-m-d");
$date_end = '2021-11-28';

if ($date_now >= $date_end) {
	
	echo 'Дата уже наступила';
	
}else{
	
	echo 'Дата еще не наступила';
	
} ?> 

Поделиться в соц. сетях:

  • Похожие записи
  • Комментарии
  • Вложения
Breadcrumbs

Breadcrumbs

Breadcrumbs (хлебные крошки) — это удобный инструмент навигации, без которого не обходится ни один современный сайт. На данный момент есть несколько альтернативных вариантов крошек от разных разработчиков, помимо нескольких десятков Читать далее »

Атрибуты товара WC

Атрибуты товара WC

В интернет-магазине Woocommerce есть функционал атрибутов. Атрибуты товара — это дополнительные поля для различных значений. Атрибуты бывают 2-х типов: текстовый (text) и с выбором значения (select). Архив значения атрибута Для Читать далее »

/
Расширение функционала WP

Расширение функционала WP

Разгрузка functions.php Для разгрузки основного файла functions.php нужно в папке темы создать папку (например inc) и в нее помещать файлы функций (желательно по назначению: хлебные крошки, шорткоды, редактирование, связанные с Читать далее »

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

1 комментарий

  1. Maxwell

    Мсье администратор, у Вас очень «грязный» код. Сделайте подсветку хотя бы, чтобы не ломать глаза.
    Большинство здесь функций приходится разбирать самому. Некоторые не работают.
    Если Вы делаете запись, будьте добры, показывать демо или в конце записи хотя бы уже собранный и рабочий код. Это и для посетителей хорошо и вам в карму.
    Спасибо!)

Манипуляции с датами
Дочерние темы
Рекомендации для васДочерние темыOpttour.ru
Спасибо! Наш менеджер свяжется с Вами в течении 5 минут.