Вчера пришел вопрос – как сделать шапку, он же header, кликабельным. Не добавить какую-то еще картинку, как здесь, а сделать кликабельной уже существующую фоновую картинку, ссылка на которую подгружается, например, из БД, а не прописана напрямую. Чтобы при клике на нее пользователь попадал на главную страницу. Я, откровенно говоря, даже удивился – поскольку не подозревал, что существуют темы, которые нарисованы как-то по другому, и что клик по шапке никак не адресуется. В принципе, известно, что в шапке можно выводить название сайта, которое по сути, представляет собою линк на home page – но вот если его нет, и при отсутствии кликабельности header – а – это проблема. Но к счастью, она достаточно легко решается, правкой всего одной строчки.
Сначала необходимо отдельно отметить, что “кликабельность” — это функционал. Поэтому все мечты сделать это через правку style.css – стоит сразу оставить. CSS у нас отвечает исключительно за “внешний вид”. Поэтому, с помощью CSS сделать ничего кликабельным никак нельзя, а вот с помощью HTML, или javascript, вписав одну маленькую строчечку в header.php — пожалуйста.
Сначала надо определить, какой div у нас отвечает за шапку. Проще всего сделать это в Опере, щелкнув правой кнопкой мышки на шапке, и выбрав в выпавшем меню строчку “Проинспектировать элемент”.
Видим, что за вывод header-а у нас отвечает div с классом container_12.
У вас может быть и другой, а может и вообще не быть – тогда правки надо будет вносить в строчку с div id=”header”. В принципе, не суть важно.
Итак – нам надо решить три задачи – во-первых, чтобы при наведении на шапку курсор принимал вид руки, во-вторых – чтобы осуществлялся переход на главную страницу, а в третьих – чтобы при наведении на хидер отражалось название сайта, или то, что щелчок ведет на главную страницу. Как я уже говорил, решаются они элементарно редактированием header.php. Открываем его в Notepad++ (а можно – прямо в админке – во внешний вид-редактор, там выбираете Заголовок(header.php)), ближе к низу ищем строку
1 |
<div class="container_12"> |
и меняем ее на
1 |
<div class="container_12" style="cursor: pointer; cursor: hand;" onclick="self.location = 'http://site.ru'" title="site.ru"> |
Где site.ru – используем URL домашней страницы вашего сайта.
Соответственно, style=”cursor: pointer; cursor: hand;” делает курсор в виде руки в кросс-браузерно, а onclick=”self.location = ‘http://site.ru'” – выводит главную страницу при клике на этот блок, title=”site.ru” – отвечает за вывод надписи при наведении курсора, можно написать Home Page, можно – название сайта. Если пишем название на русском – не забываем перед тем, как писать по-русски – в нотепеде в меню “Кодировки” поставить галочку в “Кодировать в UTF-8 (без BOM)”, иначе выводится будет абракадабра и крякозябры.
Соответственно, если за хидер отвечает только
1 |
<div id="header"> |
то меняем уже его на
1 |
<div id="header" style="cursor: pointer; cursor: hand;" onclick="self.location = 'http://site.ru'" title="site.ru"> |
Также здесь необходимо очень внимательно отнестись к тому, какие кавычки, и открывающие-закрывающие скобки-уголки используются. Вордпресс их переделывает по-своему – и поэтому необходимо брать строчки именно из выделенных блоков с прокруткой, а не просто из текста.
Понятно, что вариантов переадресации может быть еще более 100500 – и ссылку делать типа простого слэша, или index.php?id=home (в случае, если чпу не используется, и .htaccess не переписывается), и self.location делать с href, и т.д.
Но приведенный вариант, как мне кажется – самый надежный.
Вообще, в некоторых случаях правильнее делать кликабельной не всю шапку, а дополнительно в шапку вывешивать логотип, делая кликабельным только его – вот тогда надо вносить изменения и в css, и править header.php. Сделать это тоже несложно – хорошо описано здесь. Только отмечу, что если шапка уже является кликабельной – то тут, действительно, уже можно просто обойтись правкой css – добавляем туда наш логотип, внося в style.css в блоке #header .home строчки типа
1 2 |
background: url('http://site.ru/wp-content/themes/ink-stain/images/logo_hc.png') no-repeat scroll 0 0 transparent; background-position: 25% 80px; |
И вуаля.
Игнат says:
Спасибо огромное! Весь день рыл носом поисковики запросом как сделать кликибельной шапку, но все описывают как сделать ссылкой картинку-логотип, а у меня весь дизайн, это одна картинка… Оказалось всё так просто. Всё описано так доходчиво, как нигде больше!
Sergey Galayda says:
Спасибо. Перерыл кучу статей по этой теме. Предлагают такие костыли что ужас. Ваш же способ элегантный и простой. А главное с практическим примером кода и картинками.
Ирина says:
спасибо! очень полезная статья!!!!
Pavel says:
Спасибо конечно! но как сделать чтобы открывалась в новом окне, использую:
chewriter says:
location – это функция текущего окна. Если надо в новом – то необходимо воспользоваться функцией window.open, строка будет выглядеть примерно так:
<div id=”header” style=”cursor: pointer; cursor: hand;” onclick=”window.open (‘http://chewriter.ru’)” title=”На главную страницу”>
Заметьте, что в конструкции знак равно после функции изменился на скобки вокруг URL, стоящего в одинарных кавычках. А вся конструкция – уже в двойных.
Pavel says:
спасибо, так и сделал!
Руслан says:
Единственный человек, который объяснил как в Аристере 4 сделать кликабельную шапку!!!!
Виктория Крам says:
Спасибо большое! перерыла кучу мути, прежде чем Вас нашла.
У меня еще небольшой вопрос, помогите пожалуйста.
Вот мой код хедера, там явно лишнее что-то, я просто наковыряла((
Что удалить из этого:
<body>
<div id=”header”>
</div>
<div id=”container” style=”cursor: pointer; cursor: hand;” onclick=”self.location = ‘http://vikakram.ru'” title=”Блог Виктории Крам”>
<img src=”<?php bloginfo(‘template_url’); ?>/images/photo3.jpg” width=”960″ height=”197″ border=”0″ alt=”<?php bloginfo(‘name’); ?>” />
Буду очень благодарна!
Виктория Крам says:
только сейчас заметила, тайтл теперь отображается при наведении на Рубрики, Метки.. и ведет на главную.
Как это исправить?
Леонид says:
Большое спасибо за информацию! Все действительно оказалось очень просто и быстро. Зашел на данный сайт через поиск, но сейчас занес в закладки, так как реально много полезной практической информации, без лишней “воды”.
maxim says:
Спасибо
lampa2001@mail.ru says:
Проделала эти манипуляции – все заработало, но в мобильной версии перестала работать навигация…
JAne says:
Спасибо Вам, все просто и доходчиво!
Макс says:
От всей души )) целый день не мог ничего толкового найти, просто класс, спасибо!
Андрей says:
Здравствуйте.
Подскажите пожалуйста, как мне сделать сайт объявлений на вордпресс. Нужно чтобы можно было настроить поддомены для регионов. (чтобы присвоить в яндексе регион). Вот нашел одну доску объявлений link to moskva.biglus.com с регионами, подскажите какой шаблон или плагин тут используется, нужно именно, чтобы поддомены работали как в указанном сайте. Я находил плагин для создания поддоменов, но там только для категорий, тоесть из категорий создаются поддомены, а мне так не нужно.
Сосновоборск says:
Блин так долго искал как сделать ссылку в лого, наконец то нашел! Спасибо огромное!
Андрей says:
Добрый день!
Подскажите, пожалуйста, как сделать фон как у Вас на сайте?
Заранее огромное спасибо!
chewriter says:
Скачать и установить вот эту тему.
Ярослав says:
А есть макет стрелки как внизу справа !
Красивая , понравилась.
chewriter says:
Она предустановленная плагином, вот здесь я подробно писал об этом.