Несмотря на то, что сайты воспринимаются нами внешне, их внешняя составляющая строится, как и в Человеке, исходя из внутреннего мира под действием специальных законов и правил. Эти законы и правила для сайтов определяются стандартами W3C. Внешней составляющей сайта являются его дизайн и структура, внутренней составляющей – HTML-код и CSS-стили (не учитывая отдельный функционал).
Разрабатывая сайт или добавляя на него контент, мы часто заботимся лишь о внешнем его представлении. Это здорово! Однако, следует уделять внимание и внутреннему представлению страниц в виде HTML кода, особенно если речь идёт о будущем привлечении поискового трафика. Эта статья посвящена вопросам оптимизации кода сайта для улучшения его видимости в поисковых системах и построена на основе доклада автора с конференции All in Top Conf 2012 “Понятие SEO оптимизированной вёрстки”.
Каким сайтам нужна оптимизация кода
При обсуждении вопросов о влиянии валидности HTML страниц на их ранжирование ряд оптимизаторов приводит в пример страницы популярных брендов, например, самих поисковых систем. И, действительно, главная страница Яндекса имеет порядка 30 ошибок и немного больше главная страница Google. Казалось бы, сами поисковые системы не заботятся о качестве HTML кода, подавая пример другим вебмастерам, и в нём можно найти много стилей и скриптов, не вынесенных во внешний файл, а также местами мусорный код.
Здесь следует понимать, что у подобных сервисов другие задачи, источники их входящего трафика это далеко не поисковые системы, а чаще постоянная аудитория. На них не следует равняться. Такие сервисы, как поисковики, социальные сети и ряд крупных порталов не нуждаются в SEO оптимизированной вёрстке, они оптимизируют код для других целей.
SEO оптимизированная вёрстка требуется, прежде всего, сайтам, основной источник трафика которых — поисковые системы.
Почему код имеет значение?
Оптимизация вёрстки является одним из элементов внутренней оптимизации сайта, которому, к сожалению, уделяют меньше внимания чем, например, редактированию заголовков страниц или их текстов. Часто это происходит из-за того, что клиент не предоставляет полный доступ к проекту или не имеет желания/возможностей переверстать свой сайт.
Ниже перечислены ряд пунктов (своего рода факторов), которые, так или иначе, влияют на видимость сайта в поиске и относятся к качеству HTML-кода.
Лёгкость распознавания (анализа) кода роботами
Чем проще код, тем легче его проанализировать и верно определить структуру страницы. Часто поисковые системы справляются с анализом сложного и невалидного кода, однако, для упрощения решения их задачи и уверенности, что поисковик поймёт вас правильно, лучше избавиться от ошибок, найденных валидатором и стараться делать код лёгким.
Быстрый поиск важных элементов
Какие важные элементы можно выделить на странице? Прежде всего, это заголовки, навигационные блоки, основной и вспомогательный контент. Если поисковик быстро найдёт важные элементы страницы, он лучше справится с задачей её индексации и последующего ранжирования.
Читайте также:
— О seo-вёрстке на blogto4ka.ru
— SEO оптимизированный логотип
Скорость загрузки страницы
В последнее время поисковики любят быстрые страницы, также как и пользователи. Улучшая этот показатель, можно иметь приоритет у своих конкурентов. В большей степени, скорость отдачи страницы будет зависеть от хостинга и используемой CMS, однако, также большую роль здесь играет и объем кода. Вынося всё лишнее из кода во внешние файлы и оптимизируя графику, можно существенно улучшить этот важный показатель.
Для ускорения загрузки страниц:
- CSS и JS выносите во внешние файлы;
- Элементы дизайна оформляйте в спрайты и выносите в листы стилей;
- Используйте простой код.
Доступность важных элементов для поисковых роботов
Все важные элементы сайта должны быть легкодоступны. Затрудняют доступность робота к контенту использование флеша (в навигации или важном контенте) или яваскрипта, фреймов, некорректной кодировки и текстов в виде изображений.
Для улучшения доступности кода:
- Проверьте код на валидацию с помощью validator.w3c.org
- Старайтесь не использовать флеш и фреймы;
- Всплывающую навигацию делайте открытой для индексации;
- Для нестандартных шрифтов лучше использовать стили, а не изображения.
Показатель текстовой релевантности
Текстовая релевантность зависит не только от наличия ключевых слов, но и от их позиции в контенте и разнообразия тегов, в которых они используются.
Для повышения текстовой релевантности страницы:
- Размещайте важный контент выше в коде;
- Заголовки заключайте в теги <h1> — <h6>;
- Прописывайте ALT к изображениям;
- Используйте семантическую разметку текста (каждый тег форматирования по своему назначению);
- Не используйте текстовые портянки, форматируйте и разнообразьте текст.
Читайте также:
— О семантической вёрстке на Пепелсбей.net
— Создаем аккуратную семантическую верстку
Заключение
Следует подходить ответственно не только к внешней составляющей сайта, но также и к её внутренней составляющей в виде HTML-кода. Для анализа кода используйте Web Developer Toolbar, плагин Firebug и seo-чеклист.
Отключите CSS, JavaScript и изображения на странице, посмотрите, можно ли найти основные элементы текста – заголовки, абзацы, ссылки и фразы? Примерно так видит страницу робот, убедитесь, что он правильно поймёт ваши цели и приоритеты.
Полезные ссылки:
— Пример 1 и пример 2 сайтов с хорошей вёрсткой.
— Поможем перевести старый сайт на новый движок


SeotopInUa
Февраль 3, 2012 at 14:42
1Отличная статья, собравшее в себя все преимущества семантической верстки и грамотного оформления кода. На скорость загрузки это также неплохо влияет – не загромаждайте свой код лишними приблудами…
Богдан
Февраль 3, 2012 at 14:43
2Полностью согласен с выложенной статьёй! Хоть я и сам пока новичок, но даже я знал, что всё это просто необходимо для сайта(блога), не понимаю, как другие это могут игнорировать?!
Виктор
Февраль 3, 2012 at 15:01
3Надо изучать HTML и CSS более подробно, чтобы сделать код максимально валидным.
Виталий
Февраль 3, 2012 at 15:57
4Отличная статья, Сергей! В оптимизацию подался как раз послк изучения такх вот тонкостей.
Богдан, игнорирую это благодаря самозванцам, которые именуют себя “интернет-бизнесменами”, а сами только и умеют, что установить коробочный движок и повесить на него готовый шаблон из сети. А уже после этого выпускают “мега-курсы”, в которых уверяют, что “так надо и только так это и делается”.
Denis
Февраль 3, 2012 at 18:06
5Какая-то непонятная ошибка на seodic и на http://www.seochecklist.ru/ тоже есть ошибки, конечно не критические, но все же) Ну а в целом, как для меня – для начинающего, то вполне красивый структурированный код, который, например, будет несложно подправить даже мне, наверное…
Может я где-то упустил что-то, но хотелось бы услышать больше об экспериментах с seo-версткой на HTML5 – использование article, footer и других атрибутов… Какие могут возникнуть проблемы у пользователей старых браузеров, и на сколько такая верстка лучше воспринимается поисковиками.. А то и хочется, и колется, как говорится)
Пророк
Февраль 3, 2012 at 18:06
6Сама кнопка Google +1 – не валидна. Ну а о скорости загрузки сайта нужно подумать любителям WordPress. Мои сайты на фреймворке летают, несмотря на недорогой хостинг.
krinkrank
Февраль 3, 2012 at 23:25
7Сами гугл и яндекс не валидны.
Делитант
Февраль 4, 2012 at 00:42
8Весьма спорный совет – “JS выносите во внешние файлы”. Выносить или не выносить, а если выносить то как именно – зависит от размера, функции и общего количество JS в коде.
AlexB
Февраль 4, 2012 at 03:31
9Оптимизация кода дело конечно хорошее, но не всегда помогает)
У меня например всегда встает вопрос о красоте диза и скорости загрузки. Вот как то эти параметры совместить неполучается)
Про валидацию вообще молчу)
С валидацией не было проблем, когда шабы артистиром собирал, а сейчас не очень.
Николай
Февраль 4, 2012 at 03:42
10никогда не заморачивался версткой, теперь думаю заняться вплотную
Winmaster
Февраль 4, 2012 at 08:39
11Если хотите полностью валидный сайт, то на хабре недавно темка была… Simpliste кажется проект называется. Голый шаблон, иногда юзаю
Олег
Февраль 4, 2012 at 12:47
12Уже столько раз перетерли всё это, смысл писать об этом в 250-ый раз?
Дмитрий
Февраль 4, 2012 at 18:09
13Ну, в общем то, советы безусловно верные по оптимизации кода под продвижение (заголовки, форматирование и т.п.), но по сути соблюдение валидности вообще никак не влияет на продвижение. Разве что только в очень запущенных случаях, когда странная верстка мешает роботу разобраться что и к чему. Но в сторону повышения ранжирования валидность не даст никаких очков или дополнительных балов. В подавляющем большинстве случае браузеры и роботы уже достаточно умны, чтобы не замечать огрехи. Если проблем с индексацией нет, то и валидность не даст ничего кроме галочки. ИМХО.
Страхователь
Февраль 4, 2012 at 21:40
14Спасибо за статью! Всегда замечал как паук реагирует на обилие кода, но не всегда получается его максимально уменьшить. Есть сервисы которые проверяют соотношение кода к тексту, так там написано что меньше 15% текста это уже плохо.
Андрей
Февраль 6, 2012 at 10:36
15Я исправил код сайта по замечаниям w3c, однако остались ошибки кнопок соц. сетей. С гугл+1 разобрался и сделал валидным код, вот так (<div class=“g-plusone”></div>), а с остальными пока что не получается.
katrin
Февраль 6, 2012 at 16:20
16Валидность, конечно, и влияет на рейтинг в поисковой выдаче, но не так, как контент. Поэтому и оптимизируют сначала контент, а затем уже за код принимаются.
Имхо, простой сайт без флеш и прочего делают для пользователей. Например, если я открываю сайт солидной фирмы на флеше да еще старом браузере, в котором не отображаются элементы, но я закрою его. А много людей не пользуются доисторическим экспорером без обновлений.
Антон
Февраль 7, 2012 at 13:06
17Один мой сайт под фильтры Яндекса попал из-за невалидности кода, так что этому нужно приделять особое внимание.
Xrumik
Февраль 7, 2012 at 16:21
18Конечно код влияет, у меня не один сайт под фильтр Я попал из-за этого, так что исправляйте обязательно.
Николай
Февраль 8, 2012 at 12:28
19Информация хорошая,но новичку не просто разобраться.Вывод:изучать самому или обратиться к вебмастеру.
Павел
Февраль 8, 2012 at 12:44
20Уже 3 раза брался за исправление ошибок валидности кода. Но так и не доделал до конца. Свои ошибки поисправлял, а счетчики, соцзакладки, код дримвивьера оказались мне не по силам. Подскажите, на каком форуме уже обсудили этот вопрос и привели конкретные решения. Ведь большинство использует одни и те же счетчики, кнопки. Не хочется изобретать велосипед и тратить на это время.
Ксения
Февраль 8, 2012 at 15:08
21А мне, глупой девушке, далекой от SEO, оптимизация HTML-кода кажется лишней тратой времени. По крайней мере, если речь идет о СДЛ. Рулят ссылки и посещаемость. Если открыть тот же топ блогов Яндекса, то там половина не то что с оптимизированным кодом, а вообще из копипасты, но обилие реальных посетителей и постоянное появление ссылок делают, что и Гугл, и Яндекс все глотают в индекс, да еще хорошие позиции в выдаче дают.
Владимир
Февраль 8, 2012 at 15:36
22Любой сайт имеет ошибки в html-коде, даже Гугль и Яша. Так что не стоит заморачиваться, если сайт нормально индексируется и корректно отображается.
Gendalf
Февраль 8, 2012 at 18:47
23сейчас ещё мода пошла зашивать ссылки в шаблоны (((
iKorot97
Февраль 9, 2012 at 12:34
24У меня ошибок в шаблоне много, но код блогспота непонимаю. И поэтому не могу изменить html и убрать ошибки.
Денис
Февраль 10, 2012 at 02:16
25Да постоянно, забываем о валидаторе, а надо бы помнить, я тоже дамаю что это улучшит индексацию
Симпатяжка
Февраль 11, 2012 at 18:17
26В принципе все правильно и собрано воедино, но меня смущает несколько раз упомянутое “выносите в отдельный файл”.
Разве скрипты вынесенные в отдельный файл ускоряют загрузку страницы? Если не путаю, то страницу считают загруженной только после того как прогрузилось все: и тело документа и внешние скрипты. Тогда какая разница где они. Плюс тратится время на запрос отдельного файла.
балашов
Февраль 12, 2012 at 00:02
27хорошие советы…
но насчёт: CSS и JS выносите во внешние файлы;
могу поспорить и доказать обратное.
egr18
Февраль 13, 2012 at 18:26
28мне кажется что верстка влияет на выдачу в тех случаях когда сайт создает новичек в редакторе типа web page maker, для которого HTML это четыре буквы которые идут после точки в названии его веб страниц . Создает он сайт по принципам чем больше там всего светится, двигается, моргает, и звенит тем круче (сам таким был))). И код получается настолько кривым, что пауки гугла и яши себе все лапы попереломают. Что касаеться сайтов на популярных cms или написаных вручную, то роботы не обращают особого внимания на мелкие, редкие ошибки.
BACK-BIZE
Февраль 13, 2012 at 20:15
29полностью валидный сайт сделать ой ой какой головняк. не каждый сможет сделать. у меня друг Верстальзик, сверстать так ленится даже мелочь какую-то.
Shuvalof
Февраль 13, 2012 at 20:52
30Сделать сайт кроссбраузерным, валидным и чтобы диз был приемлемый – это почти не реально. Для поисковиков лучше статичные сайты делать.
Kittty
Февраль 14, 2012 at 11:32
31Полностью валидный сайт сделать просто не реально если сайт больше чем 200-300 страниц, но если 2-15 страниц то можно и заняться этим.
hemich
Февраль 15, 2012 at 13:45
32Я валидацию делал через валидаторы сайтов. Выдает ошибки только исправляй .. По поводу большых проектов – если сайт на шаблонах построен .. то там особо проблем так же не составляет!
Lex
Февраль 15, 2012 at 22:15
33Устроился недавно в крупную дизайн-студию, верстальщиком. Сижу в офисе страдаю фигнёй, теперь таки наконец будет время поработать над оптимизацией своего блога, как раз и попрактикуюсь :)
А в целом, помоему, у поисковиков каналы бешенные- для них все сайты как на ладони.
Zeleboba
Февраль 16, 2012 at 03:30
34Совсем без ошибок в html не обойтись, если равняться на валидатор. Тот же WP пихает в код rel атрибут со значением, отсутствующим в спецификации. Не думаю, что это как-то влияет, но ошибки все равно присутствуют по факту…
Grigorij
Февраль 17, 2012 at 04:31
35Знаю кучу примеров, где код не то чтобы не оптимизирован, а вообще весь в одну строку – и ничего, сайт отлично чувствует себя в выдаче всех ПС.
Thomas
Февраль 17, 2012 at 05:16
36Мне кажется, что было бы еще интересно рассказать о том, как не только оптимизировать код, но и про новую разметку, которая дает возможность передавать поисковикам отзывы, фото и т.п. Т.е. про микроформаты.
А так да, статья по делу!
Тёмыч
Февраль 17, 2012 at 18:51
37заметил что сейчас все стараются под роботов затачивать страницы!
overnight bags
Февраль 18, 2012 at 18:56
38оптимизация нужна вордпрессу – это точно :D не в тему, но накипело… убиваю уже второй вечер чтобы достичь порога….
а по теме да, гугл ранжирует выше оптимизированные сайты, об этом говорил Мэтт и личный опыт туда же)
eftanaziyaim
Февраль 21, 2012 at 14:39
39в ворпрессе есть готовые плагины для оптимизации
Анатолий
Февраль 23, 2012 at 13:08
40w3c валидатор обычно находит ошибки и часто несущественные! Если взять 10-ку из топа, практически у всех в коде находятся ошибки!
dicso
Февраль 24, 2012 at 16:21
41по любому ворпрессу оптимизация не помешает))
exail
Февраль 24, 2012 at 21:30
42Я сначала заморачивался с валидностью, но после того как увидел, что у гугла тоже есть ошибки валидности, забил на это
Anderstender
Февраль 25, 2012 at 08:36
43Вопрос о влиянии валидности HTML страниц на ранжирование страниц так и остаётся спорным. Нужно смотреть страницу как её видит робот, и убедившись, что с текстом всё в порядке, переживания о коде оставить на потом. А вот скорость загрузки страницы действительно важна.
Стас
Февраль 26, 2012 at 18:07
44Скорость загрузки сайта – вот что важно, сам гугл об этом говорил
Максим
Февраль 27, 2012 at 07:28
45Стас, поподробнее пожалуйста, откуда такая инфа? Я знаю несколько сайтов где сервер находится не по лучшем канале, и они таки имею достаточное количество авторитета. Так что… не надо, заблуждать нас.
Andrew
Февраль 27, 2012 at 19:18
46Для обеспечения совместимости с абсолютно всеми браузерами не так легко сделать код валидным…
oriolo
Февраль 28, 2012 at 13:03
47Мне кажется, за валидным кодом гнаться не нужно. То есть, если в вордпресс создал кучу rel с невалидным значением, это не фатально. Но пользоваться валидатором все-таки полезно хотя бы для того, чтобы исправить ошибки в коде, которые не заметил сам.
Андрей
Март 1, 2012 at 15:49
48И правильно, ведь это основа сайта ( так сказать раскладываем все по местам), вскоре пользуясь советами не надо будет ломать голову, как ускорить загрузку сайта, хотя оптимизация никогда не помешает
Сашка
Март 2, 2012 at 20:22
49Спасибо за статью! Всегда замечал как паук реагирует на обилие кода, но не всегда получается его максимально уменьшить. Есть сервисы которые проверяют соотношение кода к тексту, так там написано что меньше 15% текста это уже плохо.
Webliberty
Март 5, 2012 at 08:11
50Над кодом я постоянно работаю, оптимизирую, упрощаю. Сделал страницы блога валидными. Вот только со спрайтами никак не могу разобраться…
Auhin
Март 11, 2012 at 12:05
51А что это все забывают про валидатор CSS?
http://jigsaw.w3.org/css-validator/
Ошибки в CSS не редкость, причём неправильные инструкции иногда обрабатываются браузерами так, как задумано верстальщиком, несмотря на неверный код.
Для сайта на статическом HTML/CSS валидный код писать совершенно не проблема.
Весельчак
Март 17, 2012 at 15:39
52Касательно валидации – тот же Яндекс ее проходит не идеально. Всегда думал, что она не для роботов, а для браузеров важна.
Сергей
Апрель 13, 2012 at 15:21
53Вот интересно действительно: насколько поисковик занижает (если это действительно так) сайт, если есть ошибки валидации.
Tatiana
Май 6, 2012 at 22:10
54egr18 Это ошибочное мнение касательно новичков. Не все начинающие создают сайты как вы описали. “сайт создает новичек в редакторе типа web page maker,” Я недавно в этой среде, не выношу на дух все что светится, двигается, моргает, и звенит и тд. Это шаблонная мысль или ярлык.
Tatiana
Май 6, 2012 at 22:20
55Сергей спасибо за статью, подскажите это не очень хорошо если страница index.html будет статичной?