Разные URL. Что такое внутренние дубли страниц и как с ними бороться? Когда использовать rel=author, а когда rel=publisher

Это работает во всех браузерах (если кто-то когда-то придумает новый язык для оформления, тогда можно будет просто вернуть атрибут type и указать в его значении новый тип документа).

rel = alternate

Это отношение также весьма распространено. в сочетании с указанием медиа типа RSS или Atom «включает» так называемое «автоматическое обнаружение канала». Это позволяет организовать канал с последними статьями или новостями для читателей использующих, к примеру, Google Reader. Большинство браузеров тоже поддерживают автоматическое обнаружение такого канала и отображают специальный значок рядом с URL. (в отличии от rel="stylesheet" тут атрибут type нужен. Не выбрасывай его).

Ссылочное отношение rel="alternate" всегда было странным гибридом, даже в HTML4. В HTML5 его определение было уточнено и расширено для более точного описания веб контента. Как только что было показано, использование rel="alternate" в сочетании с type=application/atom+xml указывает канал Atom для текущей страницы. Но можно так же использовать rel="alternate" в сочетании с любым другим значением атрибута type для обозначения другого формата, например, PDF.

HTML5 так же закрывает глаза на запутанный вопрос — как указать отношение на документ с переводом. HTML4 говорит использовать в сочетании с rel="alternate" чтобы указать язык связанного документа. Но это не правильно: в списках ошибок HTML4 явно сказано, что использование rel="alternate" для указания языка документа является ошибкой. Но на этом дело пока и остановилось, вопрос не доработан. В HTML5 для указания языка документа используется .

Остальные ссылочные отношения в HTML5 rel="archives"

указывает, что ссылаемся на коллекцию записей, документов или другие материалы, представляющие исторический интерес. Ссылки на материалы из архива блогов могут содержать атрибут rel="archives"

Rel="external"

указывает, что документ, на который ведет ссылка, не является частью этого сайта, но текущей документ является частью того документа на который ссылаемся. Я думаю это пришло из WordPress, который использует эту связь для ссылок, оставленных комментаторами.

Rel="start", rel="prev" и rel="next"

определяет отношения между страницами, которые являются частями одной серии (например, главы книги или даже сообщения в блоге). Все вроде бы просто, но корректно используется только rel="next". Народ привык писать rel="previous" вместо rel="prev", rel="begin" и rel="first" вместо rel="start", используют rel="end" вместо rel="last". И еще, некоторые создают rel="up" для ссылок на «родительскую» страницу.

HTML5 включает rel="first", который получил наибольшее распространение как способ сказать, что «это первая страница серии» (rel="start" является синонимом, для поддержки обратной совместимости). Так же включены rel="prev" и rel="next" (поддерживается и rel="previous" для обратной совместимости), а так же rel="last" (последний документ в серии — противоположность rel="first") и rel="up".

Чтобы проще было понять как использовать rel="up", найди где-то и посмотри на навигацию вида «хлебные крошки» (ну или просто представь это себе). Главная страница, скорей всего, будет стоять первой, а текущая страница будет в конце. Так вот, rel="up" должен указывать на страницу, которая стоит перед последней (текущей) страницей в этой навигации.

Rel="icon"

второе по популярности ссылочное отношение. Обычно используется в паре со значением shortcut:

Все популярные браузеры поддерживают это и используют для определения иконки, связанной с текущей страницей. Эта иконка обычно отображается браузерами рядом с URL, или во вкладках, или там и там.

Ключевое слово any атрибута sizes означает что иконка может масштабироваться (используется векторный формат, вроде SVG). Если атрибут sizes отсутствует, браузер отобразит иконку с размерами, соответствующими реальному размеру графической картинки.

Rel="license"

это отношение было придумано сообществом, продвигающим микроформаты. Это означает, что мы ссылаемся на документ, который соблюдает условия авторского права, в соответствии с которым публикуется текущая страница.

означает, что ссылка не была одобрена автором данной страницы, и что она тут находится, скорее всего, по коммерческим соображениям. Это было придумано Google и стандартизовано сообществом микроформатчиков. Идея была таковой, что ссылки, снабженные таким атрибутом, не будут передавать PageRank и это избавит сообщество от спамеров в комментариях блогов. Как оказалось, это от спама не спасло, но сохранился. Многие популярные системы блогов по умолчанию добавляют всем ссылкам в комментариям .

rel="noreferrer"

указывает, что при переходе по такой ссылке ПА не должны включать в запрос HTTP заголовок Referer. Пока это не поддерживается браузерами, но недавно была добавлена поддержка rel="noreferrer" в Webkit nightlies, а значит, скоро появится в Safari, Chrome и других webkit-браузерах.

указывает адрес "pingback" сервера. Спецификация гласит: «система pingback — это возможность блогу автоматически получить уведомление, что на него кто-то сослался. Это предоставляет возможность собрать все комментарии/отзывы к статье в одном месте». Некоторые системы блогов, в частности WordPress, включают этот механизм у себя по умолчанию.

служит для оптимизации загрузки веб страниц. Указанный документ в такой ссылке (html, css-файл, изображение и т.д.) будет подгружен в кэш пользователю в фоновом режиме. Такие ссылки применяются к документам, которые скорей всего вот-вот понадобятся пользователю. Например, некоторые поисковые системы используют этот механизм для документов в топ выдаче. Сейчас данную технологию поддерживает только Firefox.

указывает, что документ, на который ссылаемся, содержит интерфейс для поиска для данной страницы и связанных с ней ресурсов. В частности, если хочешь чтобы rel="search" делал что-то полезное, то эта ссылка должна вести на Open Search документ с описанием для браузера, как ему выполнить поиск на данном ресурсе используя URL и ключевое слово. Поддержка формата Open Search (а вместе с ним и rel="search") была включена в IE7 и FF2.

служит для добавления, указанного в ссылке документа, в закладки браузера. Когда кликаешь на ссылку с rel="sidebar", показывается окошко с предложением добавить страницу в закладки. Сейчас поддерживается Opera и Mozilla, остальные браузеры это правило игнорируют.

указывает, что эта ссылка является тегом, относящимся к данной странице. Навигация по тегам (ключевые фразы, категории блога/сайта) впервые была применено Technorati, чтобы как-то классифицировать сообщения в блоге. Сначала их так и называли — теги Technorati. Позже тегирование было стандартизировано сообществом микроформатчиков и теги получили обозначение rel="tag". Большинство систем блогов добавляют ссылкам-тегам данный атрибут. Браузеры на это никак не реагируют. Это знак для поисковых систем о том, куда ведет данная ссылка.

Влад Мержевич

В интерфейс браузера Firefox, начиная с версии 2.0 встроена строка поиска, позволяющая без захода на сайт вводить поисковые запросы к Гуглу, Яндексу и другим системам. Идея оказалась удачной и ее впоследствии подхватили разработчики других браузеров. Несмотря на то, что подобным поиском пользуются многие, включая и создателей сайтов, большинство из них не подозревают, насколько просто и легко сделать собственный поисковый плагин для сайта. Плюсов у такого плагина несколько: пользователи начинают активнее использовать поиск, возрастает количество посетителей, повышается результативность сайта, улучшается юзабилити. Главное, что затрат практически нет. Если на сайте используется поиск, «прикрутить» для него плагин раз плюнуть.

В основе плагина лежит технология OpenSearch, которая представляет собой коллекцию небольших форматов для распространения результатов поиска. Эти данные могут использоваться браузером для перехода к нужной странице, вывода описания, картинок и других вещей. Поскольку я затрону лишь малую часть всех возможностей, отсылаю желающих к полному описанию спецификации по адресу http://opensearch.org .

Перейдем от теории к практике. Итак, у вас на сайте уже есть поиск и при вводе запрашиваемой строки выводятся результаты по адресу http://mysite.ru/search/?q=бла-бла. Вместо «бла-бла» может быть любая строка, конечно же. Создаем файл с расширением xml, назовем его search.xml, и сохраняем на сервере. Содержание этого файла следующее (пример 1).

Пример 1. Файл search.xml

Краткое название сайта Краткое описание поиска http://mysite.ru/favicon.ico UTF-8

Первые две строки в примере являются стандартными. Остальные элементы описаны ниже.

ShortName - краткое название сайта, как оно будет отображаться в строке поиска браузера, длина не более 16 символов. В имени недопустимо использовать теги HTML.

Description - краткое описание поисковой системы. Не должно превышать 1024 символа и содержать HTML-теги. Это необязательный параметр и его можно опустить.

Image - путь к иконке сайта в формате ICO, PNG или JPEG. Размер иконки обычно 16x16 пикселов. Элемент не обязателен и если иконки нет, удалите его из текста. Непременно должен быть указан тип файла через параметр type , для ICO - image/x-icon, PNG - image/png, JPG - image/jpeg.

Url - путь к результатам поиска. В параметре method пишется метод отправки данных (обычно GET), а в template указывается полный адрес к поисковой странице. Вместо поискового запроса надо написать {searchTerms}. Если для работы поиска требуются и другие параметры, их можно перечислить здесь же через амперсанд (?q={searchTerms}&lang=ru ).

InputEncoding - кодировка, в которой выводятся результаты поиска.

Теперь остается включить механизм добавления плагина в браузер пользователя. Это можно сделать двумя способами: через тег и JavaScript.

Использование тега

В теге добавьте следующую строку.

Здесь Title название поиска, URL относительный или абсолютный путь к файлу search.xml. К примеру, для сайта сайт эта строка имеет такой вид:

После включения указанной строки на сайт при открытии списка поисковых плагинов будет виден и ваш (рис. 1).

Рис. 1. Поисковый плагин в списке Firefox

Использование JavaScript

Пользователи не всегда догадываются, что в строку поиска можно добавить плагин с текущего сайта, поэтому следует предложить им это сделать явно, нажав на ссылку. Сама ссылка ведет не на документ, а на следующий скрипт (пример 2).

Пример 2. Скрипт для добавления плагина в браузер

function addEngine() { URL = "http://mysite.ru/search.xml"; if (window.external && ("AddSearchProvider" in window.external)) { window.external.AddSearchProvider(URL); } else { alert("Ваш браузер не поддерживает поисковый плагин!"); } }

Здесь переменная URL содержит путь к файлу search.xml. Скрипт работает в браузерах Firefox, Internet Explorer 7 и старше. Для остальных браузеров будет выведено сообщение с помощью alert() .

Создать ссылку можно разными способами - через тег , указав в качестве адреса решетку и добавив событие onclick (пример 3), либо вообще отказаться от ссылки, заменив ее тегом (пример 4).

Установить плагин

Пример 4. Вызов скрипта

Установить плагин

Технология OpenSearch не ограничивается простым перенаправлением на результаты поиска, с ее помощью также можно выводить в браузере подходящие варианты слов и даже изображения. Для этого используются .

LINK - это тег, который обеспечивает связь между страницами сайта, и связь между файлами ресурсов и сайтом. Он может быть расположен только в теле HEAD. Тег LINK регистро-независим. При помощи него можно связать ленту новостей со страницей сайта, можно подключить иконку страницы, подключить к странице таблицу стилей. Также можно логически вязать разные страницы сайта, если между ними есть определенная взаимосвязь. Действие тега LINK распространяется только на ту страницу сайта, на которой он установлен.

Тег LINK используют некоторые боты, для понимания структуры сайта. Также, эти теги используются некоторыми браузерами и плагинами, для удобной навигации по сайту. В частности, в браузере Opera существует панель навигации, которая берет информацию из тега LINK . Поэтому, если вы заботитесь о своих пользователях и удобстве навигации по сайту, то обязательно связывайте структуру сайта через теги LINK .

Синтаксис тега LINK выглядит следующим образом:

Свойство тега LINK "href" определяет файл, с которым будет связана страница (страница, на которую делается ссылка). Свойство "rel" определяет тип связи между файлом (документом) и страницей. "type" определяет тип файла, который связывается со страницей. "media" - тип устройства, на котором должна отражаться связь с файлом ресурсов.

Свойство HREF

Значением этого свойства может быть любой файл, на который ссылается тег LINK . Адрес файла задается в любом доступном формате. Это могут быть как прямые сылки, так и относительные.

Свойство REL

Это свойство может принимать одно из следующих значений:

  • top или home - ссылка на самую первую в иерархии сайта страницу.
  • contents или toc - ссылка на файл оглавления сайта.
  • index - ссылка на файл, который может выполнять индексный поиск по странице. Индексный поиск - это поиск нужного слова или словосочетания в пределах одной страницы.
  • glossary - ссылка на файл, который является глоссарием страницы, и содержит термины и определения, которые упомянуты на странице. Обычно, ведет на краткий справочник.
  • copyright - ссылка на файл, в котором показаны авторские права на страницу.
  • next - ссылка на следующую страницу сайта по предполагаемому маршруту пользователя.
  • previous - ссылка на предыдущую страницу сайта по предполагаемому маршруту пользователя.
  • help - ссылка на файл помощи, в котором, скажем, более подробно расписано описанное на странице.
  • search - ссылка на страницу поиска по сайту.
  • start - точка входа, с которой начинается логическая структура сайта.
  • chapter - ссылка на страницу, которая является главой текущей страницы.
  • section - ссылка на страницу, которая является главным разделом текущей страницы.
  • subsection - ссылка на страницу, которая является главным подразделом текущей страницы.
  • bookmark - ссылка на закладку к текущей странице, установленную на другой странице.
  • up или parent - ссылка на страницу, которая находится выше текущей страницы по иерархии сайта.
  • first - ссылка на страницу, которая является первой по предполагаемому маршруту перемещения пользователя по сайту.
  • last или end - ссылка на страницу, которая является последней по предполагаемому маршруту перемещения пользователя по сайту.
  • child - ссылка на страницу, которая является дочерней по иерархии сайта в отношении к текущей странице.
  • stylesheet - ссылка на файл css , в котором зранятся стилевые настройки оформления страницы.
  • alternate - ссылка на альтернативный файл текущей страницы. Обычно, с таким свойством REL ссылаются на RSS-ленты обновлений сайта. Некоторые браузеры (Opera, Firefox) при обнаружении такого тега выводят в адресной строке кнопку для перехода на альтернативный файл.
  • icon или shortcut icon - ссылка на иконку страницы. Иконка будет отображаться в заголовке страницы.
  • canonical - свойство, разработанное для поисковых ботов. Это ссылка на оригинал материала, опубликованного на странице. Если у вас на сайте имеются 2 страницы с одинаковым контентом, то при помощи этого тега можно указать, который из контентов оригинал. Пример одинакового контента на одном сайте: страница с материалом и страница оптимизированная на печать.
  • chapter - ссылка на страницу, которая является отдельной главой к текущей странице.
  • appendix - ссылка на страницу добавления контента.

При использовании свойства rel="icon" или rel="shortcut icon" тега LINK иконка может быть любая, но, желательно, чтобы она была размером 16x16 пикселей и качеством 32 битов на пиксел. Возможны и анимированные иконки, но двигаться они будут только в браузере Firefox. Остальные браузеры будут показывать только первый кадр анимации.

Свойство TYPE

Это свойство определет тип файла, на который ссылается тег LINK . Значение этого свойства задается в MIME формате. Если вы подключаете файл CSS стилей, то MIME формат будет "text/css". Если ссылка ведет на другую страницу сайта, то значение этого свойства "text/html" или "text/xml", если на иконку, то "image/x-icon", если на rss-ленту, то "application/rss+xml". Это основные и самые используемые MIME-типы.

Свойство MEDIA

Это свойство определяет, на каком устройстве будет отражаться действие файла, на кторорый ссылается тег LINK . Это свойство может принимать следующие значения:

  • all - все устройства.
  • screen - экран монитора.
  • print - устройство печати. Обычно - принтер.
  • projection - проектор.
  • braille - устройства, предназначенные для чтения слепыми, на основе системы Брайля.
  • speech - устройства речевого вывода. Обычно - синтезаторы речи или речевые браузеры.

Обычно, для файлов стилей применяется MIME-тип "screen".

Свойство TITLE

Это свойство описывает файл, на который ссылается тег LINK . Свойство является необязательным и используется, в основном, для краткого описания или оглавления RSS-лент.

Примеры

Предлагаю несколько распространенных примеров, использующих тег LINK .

Подключение внешнего CSS файла стилей:

Подключение RSS канала новостей к странице:

Подключение своей иконки favicon производится двумя тегами LINK. Это нужно для поддержки тега разными браузерами:

сылка на главную страницу сайта:

Это лишь некоторые способы использования тега LINK . Вы можете использовать его по-своему, но в рамках описанных выше правил.

Вы можете присоедениться к моему микроблогу в Твиттере

Элемент link HTML содержит связанную с документом информацию: альтернативные версии, авторы, авторские лицензии, иконки и т.д. Он должен содержать атрибут rel или itemprop , но не оба сразу. Атрибут href также является обязательным.

Когда атрибут itemprop отсутствует, этот элемент может быть объявлен только в разделе head . В противном случае он может быть объявлен в другом месте.

Примеры

В следующем примере предоставляется информация о документе с помощью элемента link с различными типами гиперссылок:

Фильм "Звездные войны: Новая надежда" Новая надежда

После падения демократии и восстановления империи надежда была утеряна...

Атрибуты Специальные атрибуты HREF

Этот атрибут тега link в HTML содержит адрес (URI ) связанного ссылкой ресурса. Он указывает браузеру, куда переходить по ссылке.

Наличие этого атрибута является обязательным. Если он отсутствует или имеет значение, которое не является допустимым URI , элемент не определяет ссылку.

Пример

CROSSORIGIN

Указывает, должен ли запрос к внешнему серверу предоставлять учетные данные CORS или нет. Допустимы два значения (без учета регистра ):

  • anonymous : CORS запросы к элементу будут содержать установленный флаг «omit credentials «;
  • use-credentials : CORS запросы к элементу не будут содержать установленный флаг «omit credentials «.

REL

Атрибут HTML link rel содержит разделенный пробелами список типов ссылок, указывающий, какое значение связанный ссылкой ресурс имеет для документа (содержащего ссылку ).

Элемент link должен содержать либо атрибут rel , либо атрибут itemprop , но не оба сразу. Атрибут href также является обязательным.

Пример

MEDIA

Список медиа-запросов с указанием типов медиа (и их характеристик ), для которых предназначен связанный ссылкой ресурс. Например, документ или ресурс может быть оптимизирован для печати (меньше цветов, изображений и фоновых тонов ), под мобильные устройства или обычные экраны. Значение по умолчанию -«all «.

Пример

HREFLANG

Этот HTML link tag указывает язык, который будет использоваться в связанном ссылкой ресурсе (указан в атрибуте HREF ).

Пример

TYPE

Тип контента (или Internet Media Type ), который должен содержать связанный ресурс.

Пример

SIZES

Разделенный пробелами список с размерами иконки ссылки. Каждый размер может состоять из двух целых чисел, разделенных буквой «х «, или из специального ключевого слова «any «, представляющего все возможные размеры. Каждое значение чувствительно к регистру.

Этот атрибут тега link в HTML должен объявляться только, когда присутствует атрибут rel и он имеет значение «icon «. Иначе ситуации его использование является недействительным.

Пример

CHARSET

Кодировка символов целевого ресурса. Этот атрибут является устаревшим и в HTML5 уже не используется. Вместо него разработчикам рекомендуется использовать HTTP-заголовки Content-Type , чтобы предоставить информацию о наборах символов в документах и других ресурсах.

Пример

REV

Значение текущего документа (содержащего ссылку ) для связанного ссылкой ресурса.

Этот атрибут HTML link tag является устаревшим и в HTML5 уже не используется. Разработчикам рекомендуется заменить его атрибутом rel .

Пример

Перевод статьи «LINK ELEMENT » был подготовлен дружной командой проекта .

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

Сперва надо создать файл-описание поисковой системы вашего сайта. Вот примерный шаблон такого файла:

  • < OpenSearchDescription xmlns = "http://a9.com/-/spec/opensearch/1.1/" >
  • < ShortName > Site Name
  • < Description > Site Name - Search
  • < InputEncoding > windows - 1251
  • < Contact > your_mail @ domain
  • < Image width = "16" height = "16" > data : image / x - icon ; base64 , AAABAAEAE ... AAAA
  • < Developer > Admin
  • < Url type = "text/html" method = "GET"
  • template = "http://site/search?q={searchTerms}&do=action" />
  • Вы можете менять следующие поля: ShortName - краткое название сайта, не более 16 символов. Description - описание сайта, не более 1024 символов. InputEncoding - кодировка сайта. Contact - контактный ардес e-mail администратора сайта. Developer - имя или никнейм администратора сайта. Url - шаблон ссылки, которая формируется для обращения к странице поиска. Переменная {searchTerms} будет автоматически заменяться на строку, которую пользователь будет вводить в форму поиска браузера. В шаблоне она должна быть записана именно в таком виде. Image - иконка, которая будет отображаться рядом с названием вашего сайта. Она может быть двух типов: в виде ссылки на файл на сервере или в виде закодированных двоичных данных. Например:илиВ этом случае данные представляют собой содержимое файла иконки, сконвертированное в текстовое представление по алгоритму base64. По возможности придерживайтесь стандартного размера иконки - 16х16 пикселов. Это минимально необходимый набор параметров для файла описания. Полный их список вы можете найти в официальной спецификации OpenSearch и в руководстве по созданию поисковых плагинов для Firefox.

    После того, как файл-описание вашей поисковой системы создан и размещен на сервере, надо сообщить об этом браузеру пользователя. Делается это специальным мета-тегом в заголовке страницы:Здесь search.xml - имя файла-описания и полный путь до него, title - краткий заголовок, который будет отображаться в меню добавления поисковой системы в браузере, остальные поля служебные и не должны меняться. Теперь при заходе на web-страницу с таким мета-тегом, например браузером Firefox, в окне поиска появится кнопка "плюсик". При нажатии на нее поисковая система вашего сайта будет добавлена в список поисковых систем пользователя. Firefox обрабатывает OpenSearch-файл и конвертирует его в собственный поисковый плагин.

    Для личных нужд наклепал несколько поисковых плагинов для Mozilla Firefox. Это поисковики по трекерам kinozal.tv, demonoid.com, thepiratebay.org, по базе форматов файлов formats.ru, поисковики для программеров wotsit.org, php.net, msdn.com, и, конечно, проверка правописания gramota.ru. Может кому и пригодится.

    Mozilla.Firefox.Searchplugins.zip (8,399 bytes)


    Для установки скопируйте файлы в папку \Mozilla Firefox\searchplugins и перезапустите браузер.