Ваш путь: Главная » Контент, шапка site » текущая страница

возможно заказать разработку или сопровождение, услуги вашего сайта/блога


обновлено: 2024-02-13 в теме: Контент, шапка site
Запросто с WordPress создание и продвижение сайтов ATs media

Как правильно разметить шапку сайта header.php – теги h1 – h2 и их условия вывода

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

А исправления h1 – h2 “зевков” на рабочем сайте, будут трудоёмки и плачевным, в плане падения трафиков и т. п…

Напомню тем, которые решаются работать с бесплатным шаблоном WordPress: вы должны быть готовы к большой работе по доводке темы! – и удаление рекламных ссылок в футере и т.п…й котовасии только самое начало работы! и также:


 

Большинство бесплатных шаблонов Вордпресс реализованы с неверной (в плане seo) теговой разметкой страниц сайта (скажем так). Так что – придётся изловчиться и всё это шаблонное неряшество вовремя лично поправить. В противном случае множество непоняток с поисковыми системами обеспечены.

Вы готовы к невниманию ПС ?? и нулю посетителей вашего блога…

 

Не упускайте! Или ищите какие-то варианты заказа тем.

 

Не сочтите за навязчивую рекламу (конечно, это реклама, но не навязчивая, а логичная), – прочтите ЭТО ТЕМНОЕ.

 

 

 

как размечать шапку (лого) сайта тегами H1 – h2

 

 

 

 

В статье буду рассматривать один из вариантов распределения тегов заголовков, а именно, когда h1 обозначается главная страничка на всех, кроме отдельной записи, страницы и т.п…

То есть – странички категорий (category), тегов (tag), архивов (archive) будут всегда под тегом h1. И, соответственно, тайтлы (title) статей h2

 

Условные теги WordPress: полная подборка, пояснения….

 

 

 

Сразу говорю: подробно толковать не стану, ибо информации по поводу синтаксического написания кода, в сети много. Да и учиться нужно правильно и постепенно, а у нас – сегодня иная тема!

 

И !! если вы прочтёте внимательно этот пост, и потренируетесь на локалке, – многое из описанного станет понятно.

 

 

ПАМЯТКА:

…напоминаю всякий раз: заведите какой-то документ «запоминалку» всех совершаемых эксов с блогом. Копируйте редактируемые файлы. Пригодится!

Поверьте: так короче до профессионализма, ибо возможность переварки накопленных крупиц знаний в кашу маловероятна!

 

 

 

Вот целомудренный и чистый код, который обычно встречается в “в новых” темах:

 

 

<div class="logo">
<?php if ($theme->get_option('themater_logo_source') == 'image') { ?>
<a href="<?php echo home_url(); ?>"><img src="<?php $theme->option('logo'); ?>" alt="<?php bloginfo('name'); ?>" title="<?php bloginfo('name'); ?>" /></a>
<?php } else { ?>
<?php if($theme->display('site_title')) { ?>
<h1 class="site_title"><a href="<?php echo home_url(); ?>"><?php $theme->option('site_title'); ?></a></h1>
<?php } ?>

<?php if($theme->display('site_description')) { ?>
<h2 class="site_description"><?php $theme->option('site_description'); ?></h2>
<?php } ?>
<?php } ?>
</div><!-- .logo -->

 

 

У вас будет что-то типа показанного в примере выше. Обратите внимание на строки 1 (див класс лого) и 2 и 3 – основной код вывода заголовка логотипа-картинки или текстового варианта..

 

Этот код будет работать следующим образом: куда бы вы ни пошли гулять по сайту… везде переход на главную будет обозначен тегом h1. Тут врас) напрашивается логичный вопрос: а как же отдельные записи?

Правильно! и в отдельных записях тег h1 останется, но вот тайтл (заглавие записи) странички будет h2.  Это в корне неверно!! (ну, во всяком случае по seo правилам-c сумнительно)

 

Предлагаю открыть файл вашего шаблона, отвечающий за вывод отдельных страниц, это, как правило документ single.php или post-single.php и заменить следующие строки:

 

 

<h2 class="title" itemprop="headline"><?php the_title(); ?></h2>

 

Тег h2 на h1 – обращаю внимание на то, что рассматриваемые ныне теги парные!

 

 

 

Отныне у вас отдельная запись будет обозначена h1 – правильно! И таким же макаром поступайте с файлом page.php и post-page.php – отвечающим за отдельную страницу (не запись) и всеми подобными файлами…

К слову сказать, обратили внимание на атрибутику itemprop="headline" в строке??? – да, это размеченный вариант файла: микроразметка schema.org.

 

 

 

Первичный этап закончен!

 

Но, как понимаете, это только полдела! …ИБО в таком случае у нас и на отдельной страничке статьи будет два h1 – перебор (ошибка). То есть: сам логозаголовок САЙТА и теперь заглавие статьи!

Нужно это дело поправить!

 

 

Помните: тег h1 должен использоваться на страничке только один раз!!

 

 

Этим и займёмся:

 

 

заменим в шапке сайта стандартный вывод тегов h1 -2 -3 на SEO оптимизированный вариант

 

 

 

Нынче нам в помощь так называемые условные теги: (для примера)

 

is_category ()

 

!is_category ()

 

…и тому подобные…

 

Очень полезные “придумки” о которых станем говорить подробнее…

 

 

 

Вот полный рабочий вариант кода LOGO и заголовков записей файла header.php, – смотрите, разбирайтесь и реализуйте на своём сайте.

Обращаю внимание: я даю вариант ЛОГО с картинкой – это более сложный способ, ибо предстоит как следует поработать с файлом CSS, иначе – шапка сломается.

Как сделать шапку сайта без рисунка лого (в формате txt), расскажу ниже.

 

 

Что не ясно – спрашивайте в коммах.

 

 

Внимательнее к путям подключения…

 

 

<?php if (is_tag ()) : ?><h1 class="site_title"><a href="<?php echo home_url(); ?>"><img src="/wp-content/themes/шаблон/images/logo.png" alt="МИХАЛИКА" title="МИХАЛИКА" />Михалика</a></h1>
<?php endif; ?>

<?php if (is_category ()) : ?><h1 class="site_title"><a href="<?php echo home_url(); ?>"><img src="/wp-content/themes/шаблон/images/logo.png" alt="МИХАЛИКА" title="МИХАЛИКА"/>Михалика</a></h1>
<?php endif; ?>

<?php if (is_page ()) : ?><h2 class="site_title"><a href="<?php echo home_url(); ?>"><img src="/wp-content/themes/шаблон/images/logo.png" alt="МИХАЛИКА" title="МИХАЛИКА" />Михалика</a></h2>
<?php endif; ?>

<?php if (is_single ()) : ?><h2 class="site_title"><a href="<?php echo home_url(); ?>"><img src="/wp-content/themes/шаблон/images/logo.png" alt="МИХАЛИКА" title="МИХАЛИКА" />Михалика</a></h2>
<?php endif; ?>

<?php if (!is_tag ()) : ?><?php if (!is_category ()) : ?><?php if (!is_page ()) : ?><?php if (!is_single ()) : ?>

<h1 class="site_title"><a href="<?php echo home_url(); ?>"><img src="/wp-content/themes/шаблон/images/logo.png" alt="МИХАЛИКА" title="МИХАЛИКА" />Михалика</a></h1>
<?php endif; ?><?php endif; ?><?php endif; ?><?php endif; ?>

 

 

 

Немного практической теории…

 

На отдельных страничках!! Тайтл статьи (при проверке “F12” или в исходном коде Ctrl+U) должен быть h1 НО!! главная теперь h2 (т.е главная, по теговому ранжированию, становится как бы второстепенной – h2) – это необходимые правила SEO.

 

 

Помните ведь: тег h1 должен использоваться на страничке только один раз! и в нашем случае именно так.

 

 

 

 

разметить шапку header.php тегами h1 — h2

 

 

Тут важно разобраться с аргументацией (условиями) функциональных строк кода: (обратите внимание – я специально сделал строки категорий <?php if (is_category ()) : ?> и условного <?php if (is_tag ()) : ?> отдельно, чтобы было понятно).

Конечно, этот код возможно прописать иначе… всё зависит от требований админа.

 

 

 

 

Ну, давайте рассмотрим на отдельном примере:

 

 

 

как отрегулировать условия вывода тегов h1 – h2 главной страницы и отдельных записей

 

 

Рассмотрите повнимательнее строки условий ниже:

 

 

<?php if (is_single ()) : ?> ваше кодированное предложение вывода "лого" в шапке
<?php endif; ?>

 

 

В общем, отличие (если вглядеться) одно: знак ! который отменяет действие h1 и вменяет на всех кроме главной выполнение отработки тега h2. Так называемые логические условия, которыми мы и будем управлять – задавать и инвертировать (противоположное значение) условия: как раз отрабатываются в принципе те условные теги, о которых я упоминал выше.

 

Т.е  (is_single ())  прописываем или выносим значок ! из функционала (это упрощённо).

 

 

<?php if (!is_single ()) : ?> ваше кодированное предложение вывода "лого" в шапке
<?php endif; ?>

 

 

 

Итак, функциональный вывод проделанной работы:

Если вы находитесь на странице тегов, категорий или главной то – файл header.php обусловит (для вордпресс) генерацию странички соответственно, сравнивая условия, например, с (is_tag ()) /строка 1/ и обычный вариант h1 !! (строки в коде выше 1 и 3.)

 

Но, когда вы переходите на отдельную страничку записи, в этом случае выводимое ИМЯ САЙТА – home_url(); – в файле header.php пристёгнуто как бы к отработке файла single.php, отвечающего за вывод (к генерированию)) отдельной записи  (скажу просто: инвертирует условия заданных заголовков значком !) и, соответственно, в этом случае выводится инвертированный заголовок главной h2.

Ну а само заглавие статьи будет h1 которое мы задавали в первой части настоящего поста.

 

Вся аналогичная отработка условий касаема и остальных разностных страничек сайта…

И помните: все прописанные условия тегов h1 - h2 файла header.php выполняются относительно отображаемой страницы браузером. Другими словами – на основании функций отрабатываемых файлов-документов single.php category.php и тому подобных… т.е с их условиями отображения!!

 

В общем, ничего страшного в сегодняшней работе нет, чтобы её не выполнить!

…попристальнее вглядывайтесь в строки рабочего кода, пробежитесь ещё разок по статье и постарайтесь понять принцип вывода в шапке сайта тегов h1 и h2… ибо это важно!!

 

 

 

 

Далее…

 

…конечно обратили внимание, у меня в статье способ – картика-логотип!

Я его предложил для тех, которым этот вариант шапки более симпатичен. Но, коли вам нужен обычный текстовой вариант, в этом случае достаточно убрать кодированные строки вывода картинки img. А именно вот эти:

 

 

<img src="/wp-content/  ....  logo.php/ alt="имя" title="имя" />

 

 

 

 

Вот и занавес близок…

 

Ну, думаю, в общем понятно изложил… Хотя мог и запутать ненароком)

 

Вот ещё что: вам потребуется подкорректировать и иные файлы, к примеру CSS, в общем, сложного ничего, но новичку трудновато.. и стань я в статье подробно расписывать многие поправки, то – точно бы запутались…

 

А посему, будет правильнее, если вы о чём-то конкретном поинтересуетесь… есть же комментарии…

 

 

Однако, упреждая вопрос о цикличном link, рекомендую прочесть как убирать циклическую ссылку логотипа главной страницы

 

И кстати же, очень рекомендую ЧИТАТЬ о том, как убрать теги h3 -h4 в заголовках сайдбара и приветственную строку h3 перед формой комментирования.

 

 

 

 

На этом у меня на сегодня решительно всё!.. можно и отдохнуть мальца

 

 

 

 

 

Содружество web-маньеристов ATs и К

А вот как обозначать в шапке description (дескрипшн – описание блога) в следующих моих публикациях.

 

 

 

Кодекс аргументов функционалаWP.

http://codex.wordpress.org/Conditional_Tags

 

 

 


подписка feedburner Online консультация по настройкам и созданию сайтов на WordPress

 

 

 

 


...вопросы в комментариях - помогу, в чём дюжу...
mihalica.ru !


Михаил ATs - владелец блога запросто с Вордпресс - в сети нтернет давным-давно...

...веб разработчик студии ATs media: помогу в создании, раскрутке, развитии и целенаправленном сопровождении твоего ресурса в сети... - заказы, вопросы... разработка...





Нажатия на кнопочки определяют Ваше высокое гражданское сознание

Поделитесь соображениями: Ваши мысли очень важны!

Внимание! Обязательные поля помечены *

  отныне доступен плагин: ats privacy policy ©


  1. Здравствуйте Миша!
    У меня что-то не получается создать условия распределения тегов h1 b h2/ Понимаю, что где-то путаюсь с
    <?php endif; ?> что ли…
    Белиберда какая-то и на сайте (в файле) и в исходном коде.
    Поможете?

    Ответить - Вика-Вика

    • Здравствуйте, Вика!

      Вероятно, где-то допускаете ошибку.

      Вы мне пришлите файлик header.php на почту (мой адрес есть у Вас в письме о комментариях) – я посмотрю и попытаюсь помочь – сделаю, как первому комментатору и мастеровому.

      Ответить - Михаил

  2. все ровно даже у вас идет на страница h2 а потом уже h1 – проверьте эту страницу в этом сервисе
    //arsenkin.ru/tools/check-h/ как быть с такой проблемой если можно то уведомление на почту киньте. Подписался на ответ). Если можно то подробнее влияет ли это на ранжирования, на сколько я знаю яндекс очень придирчив по этому поводу.

    Ответить - Саня

    • Здравствуйте Саня!
      Вопрос Ваш чисто SEOшный (эти мутные воды их стихия))…
      1 – во-первых: если взять из инета совершенно не оптимизированный шаблон – в нём этот Ваш валидатор покажет верный результат разметки! Почему? А потому, что, к примеру, на страничке статьи главная страница (лого) будет обозначена h1 и уже сама статья h2 и т.д!! (так устроен обычный шаблон)
      Вроде как бы правильно для валидатора: НО (!) в этом случае получается, что заглавная страничка будет на всяких страничках сайта обозначена ГЛАВНОЙ – т.е h1, а все остальные h2 – в том числе и СТАТЬЯ.
      Спрашивается, что первичнее? – я, думаю, что на страничке статьи ВАЖНЕЕ ИМЕННО ЕЁ обозначить тегом h1, а уж саму главную – h2 (у некоторых в этом случае лого как “р”): ибо “главная – ЛОГО” одна всегда будет главной – доменной!!
      Но вот отдельную-статейную страницу сайта, на мой взгляд, логичнее показать поисковику как заглавную КОНТЕНТНУЮ!! то, что должно предоставлять ПС (продвигать) – то бишь контент, а стало быть – H1.

      2 – Валидатор всего-то показывает правила структуры расположения иерархии тегов. …всего-то!!
      А уж оптимизировать или не оптимизировать (и каким образом оптимизировать) тему блога/сайта – это наше личное дело!

      Думаю, ПС не настолько и глуп, чтобы не разобраться в величинах (и порядке иерархии) тегов: а вот разделы нашего сайта ГЛАВНЫЕ/НЕГЛАВНЫЕ/ПРОДВИГАЕМЫЕ мы ему уже указываем, обозначая ВАЖНОСТЬ тегами, на наше усмотрение – и это справедливо!
      Именно для этого и существуют теги! – чтобы указывать ПС иерархию странички, но не тупую последовательность от h1 до h6

      Есть пословица же: не всё хорошо, что оч. хорошо))

      на сколько я знаю яндекс очень придирчив по этому поводу.

      У меня таких сведений нет: Яндекс (впрочем, как и все ПС) придирчив к качеству сайта – его контенту, чистоте кода и т.п.!!

      А правило одно: тег H1 должен использоваться только РАЗ на всей страничке, а вот выше или ниже остальных – на усмотрение автора сайта.

      Если я Вас правильно понял))
      Может немного сумбурно…

      ps|
      по этому поводу скоро напишу статью…
      Тут дело вот в чём: когда я делаю кому-то тему, – и если меня просят – то я выстраиваю идеальную (+ -) для валидаторов площадку. Т.е ошибок нет: новичок-владелец спокоен!
      Однако проходит время и админ возвращается… поправить его “идеалы”))

      Спасибо, за комментарий и дельный вопрос, Саня.

      Ответить - Михаил

  3. Здравствуйте, Михаил! Я начинающий вебмастер, по этому ни как не могу разобраться с
    У меня такая ошибка: “в разделе не хватает заголовка. Рассмотрите возможность использования h2-h6 элементы для добавления определения заголовков всех разделов.

    За ранее благодарен за помощь!

    Ответить - Александр

    • Здравствуйте Александр!
      Я Ваш пример кода убрал из комментария (т.к длинный и не очень ясный), хотя вопрос ясен: Вы мне пришлите ПОЛНЫЙ ФАЙЛ (по эл/п), на основе которого выдаётся ошибка. …И ещё раз опишите в письме, что Вам конкретно нужно. Попробую помочь !!

      Ответить - Михаил

  4. Михаил, спасибо за оперативность! Файлик с описанием проблемы отправил вам на E-mail.

    Ответить - Александр

    • Сейчас посмотрю…

      Ответить - Михаил

  5. Здравствуйте! Михаил спасибо за интересный пост. Не могли бы вы подсказать правильно ли сформирован заголовок h1 подобным образом:

    Ответить - Оксана

    • Здравствуйте Оксана!
      Сейчас посмотрю…
      …и отпишусь…

      Ответить - Михаил

    • Оксана, в принципе у Вас всё правильно на данном этапе выполнено… если главная стр. в таком варианте будет работать… (и это логично: у Вас же не блог))
      Т.е h1 (важнейший тег для логотипа) отдаётся на гл. странице… а иные заголовки помечены в h2 и h3 – всё правильно.
      Далее… предположим, перехожу в раздел “Продукция” – в этом случае у Вас заголовок “Продукция” тоже теперь в h1 (и это правильно!) и в прочих разделах всё верно.


      Далее Вам, желательно бы, в разделах как-то обозначить логотип (главную страницу сайта) в, скажем, тег h2 (некоторые обозначают в “р”). Тогда получится так на стр. разделов (и иных…): основная инфа h1, а переход на главную стр. h2 (или “р”). Так правильнее по законам SEO.
      И ещё, коли есть желание, проработайте циклические ссылки логотипаУбираем циклическую ссылку h1 логотипа на главной страницеУбираем циклическую ссылку h1 логотипа на главной странице
      В помощь условные php теги…
      Вы движетесь в правильном направлении – уверен, получится и дальше!!

      Возникнут трудности, спрашивайте… не стесняйтесь…

      Ответить - Михаил

  6. Уважаемый Михаил, извиняюсь, я про другой сайт, тот не мой. Вот тег h1 моего, по поводу которого у меня большие сомнения. Если не затруднительно вам посмотреть, буду очень признательна. С уважением.

    Ответить - Оксана

    • Сейчас взгляну…

      Ответить - Михаил

      • Главная стр. по начальной структуре размечена правильно: только нужно логотип (гл. стр. домена) обозначить в h1 – у Вас он пустой!!
        И страница записи обозначена правильно: только как и пояснял в предыдущем комме – Вам остаётся обозначить переход со страницы записи на главную чем-нить типа h2 или “р”… чтобы главная не затерялась!
        …Ну и в рубриках – вряд ли оправдано имя Рубрики тегом h1 - нужно бы h2 (или strong) – а описания записей h2… (хотя, это по желанию)… кстати: исключите из тегов h… пояснение “Архив Рубрик такой-то…” оставьте обёрнутыми тегами h только имя темы…
        То, о чём я говорил в первом ответе – актуально и для Вашего сайта…
        …словом, Вам нужно поработать… Например, можно убрать обёртку тегов h3 “Добавить комментарий” и пр. пр.

        Если что-то не ясно пояснил, переспрашивайте…

        Ответить - Михаил

  7. Спасибо! Попробую воплотить в жизнь.

    Ответить - Оксана

    • Дерзайте…

      Ответить - Михаил

  8. здравствуйте Михаил!
    Не могу убрать h1 из названия сайта. Файл header.php отредактировал а воз и ныне там. Почему не удаляется? Еще где-то прописан? Помогите если можете

    Ответить - Владимир

    • Здравствуйте Владимир!
      Если речь идёт о сайте, на который вы дали ссылку, то – всё просто!
      У вас 2 тега h1 – это ошибка!! …редактируйте (уберите, если нужно!!) в классе – class="site-title" тег h1 – в header.php
      И, конечно же, уберите в описании сайта – это, вероятно, страница “Центр Марины Кугаевских” либо запись… Отредактируйте файл, отвечающий за вывод страницы/записи класс – class="entry-title" ID поста id="post-36".
      …и всё получится.
      P|S
      у вас в шаблоне неправильно свёрстаны файлы для отдельных записей/страниц… везде h1 – это неверно относительно SEO! нужно хотя бы h2.

      Ответить - Михаил

  9. Спасибо за ответ Михаил. Я хочу убрать h1 только из шапки. На главной получается два h1 на страницах и записях нормально там шапки нет. в header h1 я убрал а он все равно остался. Надо убрать еще и класс?

    Ответить - Владимир

    • …нет, класс убирать не нужно! Только редактируйте class="site-title" – измените тег, либо задайте стили css…
      Перед тестированием сбрасывайте кэш (и браузера и сайта).

      на страницах и записях нормально там шапки нет

      – тег h1 должен быть ТОЛЬКО один на отдельной странице… (у вас их минимум по 2)
      У вас же и в архивах по несколько h1 тегов (этакий подход принято считать ошибочным).

      Ответить - Михаил

  10. Я изменяю файл header.php а изменений кода страницы не происходит.Почему? Голова лопается

    Ответить - Владимир

    • В таком случае (если верно помяли тег) где-то кэшируется. я об этом говорил.

      Ответить - Михаил

  11. Все почистил. Может шаблон не позволяет изменение, но на сервере то поменялся файл.
    Может кроме header еще где то надо менять.

    Ответить - Владимир

    • менять нужно только в требуемом файле!
      Странно как-то…
      …сказать что-то более предметно не могу: нужно смотреть файлы шаблона…

      Ответить - Михаил

  12. Печаль. Видно не судьба мне. шаблон Jolene Версия: 1.1.6

    Ответить - Владимир

    • …если хотим создать приличный ресурс бесплатно (что, бесспорно, очень трудно), то нужно лично изучать логику построения шаблонов, например! …и всё получится – ведь своя голова всегда гораздо ловчее чужой….
      IMHO такое у меня))
      По сути решение вашей задачи элементарно…

      Ответить - Михаил

  13. …будем лично изучать логику построения шаблонов…очень трудно………….и все получится…..
    ….ведь решение элементарно…..

    Ответить - Владимир

    • …и это правильно!))

      Ответить - Михаил

  14. …благодарю за бесплатную часть консультаций….и это правильно…

    Ответить - Владимир

    • К сожалению, я не волшебник, чтобы вслепую решить задачу!

      Ответить - Михаил

  15. …ну как же- ведь решение моей задачи элементарно!

    Ответить - Владимир

    • Шлите бэкап шаблона – сделаю… уберу h1 с главной страницы…

      Ответить - Михаил

  16. как его сделать

    Ответить - Владимир