В конце концов каждый web-мастер приходит
к выводу, что оформление страниц сайта должно соответствовать
стандартам. Нужно заполнить все мета-теги,
и description
в том числе. Это один из самых
востребованных мета-тегов. Второй после title
.
Рассмотрим решение проблемы в системе uCoz.
Есть технический выход из ситуации. С его помощью
в системе в своё время разрешались проблемы с title
—
использованием переменных (кодов) принятых в uCoz. Например, теперь
есть специальный код $TITLE_BAR$. Он действует не во всех
модулях, только в Новостях и Блоге. При генерации страницы
вместо этой переменной система вставит что-нибудь
подобное такому тексту:
А раньше этого кода не было, и те же самые данные составлялись вручную из нескольких переменных:
$ENTRY_NAME$ — $ADD_DATE$ — $MODULE_NAME$
На том же принципе можно составить текст description
.
Особенно удачно это будет выглядеть, если для новостного сообщения или
поста в блоге нужно составлять Краткое описание материала. Потом этот
текст будет доступен в виде переменной $BRIEF$. Даже если Краткое
описание будет не особо кратким и выбьется
из рекомендованных 160 знаков — ничего страшного. Наличие
практически любого description
лучше его отсутствия. Итак,
первый вариант:
<meta name="description
" content="$BRIEF$">
Другой вариант связан с формированием нужной строки. Если
мы не хотим, чтобы description
был длиннее 160
знаков, нам нужно обрезать текст Краткого описания. В uCoz есть
функция substr(S,N1,N2), где «S» — исходная строка, «N1» —
позиция в строке S с которой мы начнём отсчитывать
нужный нам результат. Позиция самого первого знака в строке имеет
номер 0 (ноль). А «N2» — число знаков, которые мы должны
отсчитать от позиции N1, чтобы получить наш результат (длина конечной
строки, иными словами).
Для нас будут актуальны следующие значения: Вместо S подставим $BRIEF$; вместо N1 — 0, то есть начнём с самого начала; вместо N2 — 160. Выглядеть это будет так:
<meta name="description
"
content="<?substr($BRIEF$,0,160)?>">
Попробуем на постах нашего сайта. Например, к статье про выделение номера страницы довольно длинное Краткое описание. После формирования страницы получим следующее:
<meta name="description
" content="При работе
с сайтами в системе uCoz иногда возникает проблема
с дублями метаописаний и заголовков. Это происходит (кроме
других проблем) потому, что при разбие">
Здесь нужно сделать сразу несколько замечаний. Во-первых,
видно, что текст обрублен на полуслове. Так будет не всегда. Всё
зависит от самого текста краткого описания. С «обрубками» можно
бороться, а можно ничего не делать. Мета-тег description
относится к техническим данным, которые придуманы для машин,
а не для людей. Если, например, поисковик решит, что данный description
хорошо описывает эту конкретную страницу, то он может
использовать его в поисковой выдаче. И в этом случае
мы не видим большой проблемы в том, что в выдаче будет
такое обрубленное описание. С другой стороны, поисковики могут его
модифицировать, дополнительно резать или вообще не использовать, то
есть мы не можем заранее знать, будет ли использован этот description
вообще. Большого смысла в том, чтобы пытаться составить его в виде
правильной литературной фразы, мы не видим. Так что можно оставить всё,
как есть.
Во-вторых, нужно иметь в виду, что
мы записали краткое описание к посту простым текстом, без
использования html-тегов. Если
их использовать, то $BRIEF$ будет выведен вместе с ними.
Соответственно, они будут считаться функцией substr() и выводиться
в description
. Нам этого не надо. А учитывая,
что именно текст «брифа» забирается для постинга в соц-сети,
это никому не надо. Отсюда правило: Краткое описание пишем простым
текстом (plain text).
Для тех, кто не может успокоиться из-за обрывков текста description
,
мы продолжим наши усовершенствования в следующем посте.