Динамически меняем шапку на сайте WordPress

Авг 11 2016 Published by under WordPress

Очень часто возникает необходимость динамически менять шапку на сайте. Если ваш на WordPress то эта статья, я надеюсь, вам поможет в этом. Начнем с самого простого.

Вывод случайной картинки в шапке WordPress

Создадим n рисунков для нашего хидера image_1.jpg,image_2.jpg…image_n.jpg. Для вывода рисунка воспользуемся функцией PHP rand(). Для вывода изображения в header.php заменим код вывода картинки на такую конструкцию:

хххх

Теперь при каждом обновлении страницы будет генерироваться случайное число от 1 до n и будут выводиться различные изображения.

А вот задачка посложнее.

Меняем шапку в зависимости от времени года или суток

Для определения текущего месяца воспользуемся функцией PHP date(‘m’). Чтобы не заморачиваться условными операторами PHP для определения принадлежности месяца к времени года можно описать свойства CSS классов month-01 — month-12. А создавать мы их будем динамически:

class="month-"

Заменяем код вывода картинки в шапке своим:

Затем в файле style.css описываем свойства, только что созданных классов. В нашем случае — зто вывод конкретного изображения:

/* Весна */
.month-03, .month-04, .month-05 {
background:url /images/vesna.jpg ;
}
/* Лето*/
.month-06, .month-07, .month-08 {
background:url /images/leto.jpg ;
}
/* Осень*/
.month-09, .month-10, .month-11 {
background:url /images/osen.jpg ;
}
/* Зима */
.month-12, .month-01, .month-02 {
background:url /images/zima.jpg ;
}

Аналогично решается задача изменения изображения в зависимости от времени суток. Однако, здесь следует учесть один важный момент. Если вы будете определять текущее время функцией PHP date(‘h’), то функция вам определит время на сервере. Если сервер находится, например, в Москве (там ночь), а посетитель во Владивостоке (а здесь день) получится несостыковка (если вы обратились к пользователю типа «доброй ночи»). Поэтому в данной ситуации лучше воспользоваться функцией JS скрипт, который работает на стороне клиента. Пусть эта задача будет вашим домашним заданием.

Еще можно задать каждой категории и странице свою шапку. Но об этом как-нибудь в другой раз.

No responses yet

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

29 - столько SQL запросов к базе.
0,133389 - за столько сгенерировалась страница.