Вы когда-нибудь задавались вопросом стилизации даты в блоге? Да так, чтобы было ну прям очень красиво! Сегодня мы вам покажем как это сделать, используя CSS спрайты, за, примерно, 18 минут.
Примечение: Статья ориентирована на разработчиков и дизайнеров тем WordPress. Базовые знания CSS и WordPress рекомендуются.
Что нам понадобиться:
- Графический редактор (мы использовали Adobe Photoshop)
- Простой текстовый редактор
Чему вы научитесь с помощью этой статьи:
- Даты в постах вашего блога будут супер-красивыми благодаря CSS спрайтам
Начнем…
Шаг #1
Запустите ваш графический редактор. Можете скачать шаблон PSD или PNG для того, чтобы ознакомиться с расположением элементов даты в нашем спрайте.
Шаг #2
Нам нужно создать сетку, используя в ней месяцы, дни и года. Как вы видите, наша сетка располагает месяц в одном столбце, затем дни — в два столбца, и, наконец, года — вертикально в столбце. После того, как вы убедитесь, что все нужные вам даты (например, на вашем родном языке) на месте в сетке, сохраняйте файл. Убедитесь, что текст равноудален сверху и снизу, а также слева и справа (одинаковы ли отступы). Так проще вычислять необходимые позиции элементов.
Шаг #3
Теперь немного кода. Код приведен для файлов, указанных выше.
/*Спрайт даты */
.postdate {
position: relative;
width: 66px;
height: 60px;
float: left;
}
.month, .day, .year {
position: absolute;
text-indent: -1000em;
background-image: url(images/date_img.png);
background-repeat: no-repeat;
}
.month { top: 10px; left: 0; width: 33px; height: 30px;}
.day { top: 30px; left: 0; width: 33px; height: 30px;}
.year { bottom: 0; right: 13px; width: 20px; height: 60px;}
.m-01 { background-position: 0 0px;}
.m-02 { background-position: 0 -30px;}
.m-03 { background-position: 0 -62px;}
.m-04 { background-position: 0 -94px;}
.m-05 { background-position: 0 -125px;}
.m-06 { background-position: 0 -155px;}
.m-07 { background-position: 0 -185px;}
.m-08 { background-position: 0 -217px;}
.m-09 { background-position: 0 -248px;}
.m-10 { background-position: 0 -279px;}
.m-11 { background-position: 0 -310px;}
.m-12 { background-position: 0 -341px;}
.d-01 { background-position: -51px 0;}
.d-02 { background-position: -51px -27px;}
.d-03 { background-position: -51px -57px;}
.d-04 { background-position: -51px -91px;}
.d-05 { background-position: -51px -122px;}
.d-06 { background-position: -51px -151px;}
.d-07 { background-position: -51px -185px;}
.d-08 { background-position: -51px -214px;}
.d-09 { background-position: -51px -249px;}
.d-10 { background-position: -51px -275px;}
.d-11 { background-position: -51px -309px;}
.d-12 { background-position: -51px -338px;}
.d-13 { background-position: -51px -373px;}
.d-14 { background-position: -51px -404px;}
.d-15 { background-position: -51px -436px;}
.d-16 { background-position: -51px -462px;}
.d-17 { background-position: -100px -0px;}
.d-18 { background-position: -100px -27px;}
.d-19 { background-position: -100px -57px;}
.d-20 { background-position: -100px -91px;}
.d-21 { background-position: -100px -122px;}
.d-22 { background-position: -100px -151px;}
.d-23 { background-position: -100px -185px;}
.d-24 { background-position: -100px -214px;}
.d-25 { background-position: -100px -249px;}
.d-26 { background-position: -100px -275px;}
.d-27 { background-position: -100px -309px;}
.d-28 { background-position: -100px -338px;}
.d-29 { background-position: -100px -373px;}
.d-30 { background-position: -100px -404px;}
.d-31 { background-position: -100px -436;}
.y-2009 { background-position: -150px 0;}
.y-2010 { background-position: -150px -60px;}
.y-2011 { background-position: -150px -120px;}
.y-2012 { background-position: -150px -180;}
.y-2013 { background-position: -150px -240px;}
.y-2014 { background-position: -150px -300px;}
Пояснение:
.postdate – Устанавливаем ширину и высоту всей даты. В данном случае мы делаем дату в блоке 66px на 60px.
.month, .day, .year – Устанавливаем ширину и высоту индивидуальных элементов, чтобы в комплексе дата отображалась как нужно. Месяцы и дни шириной 33px и высотой 30px. Годы — 33px на 60px. Когда вы поместите все эти элементы вместе, то получится блок 66px на 60px.
.m-01 through .m-12 – А это месяцы. Как вы видите, мы установили изображение так, чтобы изображение могло двигаться по осям X Y, в зависимости от того, где оно выводится.
.d-01 through .d-31 – То же, что и .m-01 – .m-12, только с той разницей, что мы настраиваем здесь дни, а не месяцы.
.y-2009 through .y-2014 – То же, только для года.
Шаг #4
Открываем цикл в WordPress. Это будет шаблон страницы, которая выводит ваши записи блога. Обычно — index.php. Даты отображаются также и на других страницах, но эта статья только заменит вам даты в основном цикле. Если вы дошли до этого шага, то вы достаточно «подкованы», чтобы самостоятельно найти и заменить остальные даты в вашей теме в других файлах (single.php, page.php, archives.php и т.д.)
Ищем что-то похожее на эту строку в вашем цикле:
<?php the_time('F jS, Y') ?>
Заменяем на следующее:
<div class="postdate">
<div class="month m-<?php the_time('m') ?>"><?php the_time('M') ?></div>
<div class="day d-<?php the_time('d') ?>"><?php the_time('d') ?></div>
<div class="year y-<?php the_time('Y') ?>"><?php the_time('Y') ?></div>
</div>
Шаг #5
Загружаем картинки, CSS и измененный вами файл цикла (index.php). Обновляем страницу блога и Вуаля! Красивые даты у нас на блоге.
![]()
