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

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

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

Добавляем на сайт функцию, которая приводит вывод даты (месяцы, дни недели) в человеческий вид.
Помещаем в файл 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 ('рабочий день'); }

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);
});

Тэги:

Поделится информацией с друзьями

  • Похожие записи
  • Комментарии
  • Вложения
Заглушка для сайта

Заглушка для сайта

Во время разработки / тех.обслуживания / тестинга нужно вставить код в functions function rezim_obsluzivania() { if ( !current_user_can( 'administrator' ) ) { wp_die('Сайт находится в режиме обслуживания, производятся обновления. Зайдите Читать далее »

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

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

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

Шорткоды WP

Шорткоды WP

Создание шорткода Шорткоды очень удобная функция WP. Одним из важнейших преимуществ является то, что если по каким-либо причинам сама функция не работает или отсутствует — ошибки не произойдет. Шорткод перестанет Читать далее »

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

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

  1. Аватар
    Maxwell

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

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