Description и keywords без плагинов в WordPress

Делюсь опытом по WordPress

В продолжение к статье “Использовать description и keywords или нет?” и рубрики «Делюсь опытом», сегодня делюсь опытом как создавать мета-теги description и keywords, в автоматическом режиме, без использования плагинов. Скажу сразу, рецепт построен на основе Произвольных полей WordPress и будет полезен всем кто экономит на плагинах или создает собственные, SEO оптимизированные шаблоны.

В WordPress, к моему сожалению, не предусмотрено создание мета-тегов description и keywords, простыми штатными средствами.  Я имею ввиду создание мета-тегов для каждой страницы вашего блога. Данную проблему решали сторонние плагины, такие как all-in-one-seo-pack, wpSeo и т.д.

Я написал небольшой скрипт, который автоматизирует процесс формирования мета-тегов title, description, keywords.

Скрипт формирует мета-теги для таких страниц:

  • Главная страницаtitle и description берется из настроек блога, а keywords формируется на основании всех тегов блога, ранжируя их по популярности использования. Количество ключевых слов настраиваемое, по умолчанию 25.
  • Страница рубрики - title формируется из префикса и названия рубрики + title блога. Description берется из описания рубрики, а keywords формируется из тегов публикаций находящихся в рубрике. Ключи ранжируются по популярности использования. Количество ключевых слов настраиваемое, по умолчанию 9.
  • Страница тега - title формируется из префикса и названия тега + title блога. Description берется из названия тега + 3х заголовков верхних публикаций страницы тега. Keywords формируется из дополнительных тегов публикаций находящихся на странице. Ключи ранжируются по популярности использования. Количество ключевых слов настраиваемое, по умолчанию 9.
  • Страница публикации или статическая страница - title формируется из заголовка публикации/страницы + title блога. Description, если не указан в произвольном поле, берется из 20 первых слов публикации/страницы. Количество слов настраиваемое. Keywords формируется из тегов публикации/страницы или из произвольного поля.
  • Страница архива (год, месяц, день) - title формируется из префикса и даты + title блога. Description и Keywords не указываются. Добавлен мета-тег <meta name=”robots” content=”noindex, nofollow” /> который запрещает индексирование поисковиками, чтобы исключить дублирование контента.
  • Страница поиска  - title формируется из префикса и фразы запроса + title блога. Description и Keywords не указываются. Добавлен мета-тег <meta name=”robots” content=”noindex, nofollow” /> который запрещает индексирование поисковиками.
  • Страница 404  - title прописан в скрипте + title блога. Description и Keywords не указываются. Добавлен мета-тег <meta name=”robots” content=”noindex, nofollow” />.

Везде в title перед названием блога присутствует разделитель, который указывается в настройках скрипта. По умолчанию стоит “::”.

Для того, чтобы в публикации или статической странице указать Description и Keywords вручную:

  1. Заходим в панель администратора WordPress.
  2. Создаем или редактируем статью блога.
  3. На странице редактора, внизу, находим вкладку Произвольные поля.
  4. Для мета-тега description в Имя пишем description, а в Значение пишем ваше краткое описание статьи.
  5. Для мета-тега keywords в Имя пишем keywords, а в Значение пишем ключевые слова статьи.
  6. Нажимаем кнопку ОпубликоватьОбновить.

Работы данного скрипта достаточно чтобы в автоматическом или ручном режиме, оптимально формировать правильные мета-теги для своего блога.

Скачать скрипт можно по ссылке ниже:

Содержимое блока всегда открыто в RSS,
либо введите публикуемый в RSS код для разблокировки содержимого.
Сгенерировано плагином wpRSSlock

Как подключить скрипт:

  1. Распакуйте файл seo.php, из загруженного архива, в папку с вашим шаблоном.
  2. В панели администратора WordPress кликаем, меню Внешний видРедактор.
  3. Откройте в редакторе файл functions.php (функции темы). Перед редактированием убедитесь что у этого файла стоят  права для записи CHMOD=666.
  4. В редакторе, в конец этого файла, вставляем код <?php include_once “seo.php”; ?>
  5. Сохраняем редактирование.
  6. Возвращаем права на файл functions.php CHMOD=644.
  7. Еще, рекомендую проверить файл header.php (шапка блога) на наличие <meta name=“description” content=… и <meta name=“keywords” content=, если нашли, то удаляем их.

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

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

Как проверить работоспособность скрипта?

  1. Заходим на страницу публикации в блоге.
  2. Кликаем, на странице, правой клавишей мыши.
  3. Выбираем Исходный код страницы HTML.
  4. В открывшемся окне ищем строки <meta name=“description” content=…  <meta name=“keywords” content= и смотрим что в них прописано.

Данный способ не совсем простой и удобный, но он позволяет отказаться от использования внешних плагинов и сделать ваш шаблон SEO оптимизированным по мета-тегам.

Вы можете модифицировать и использовать скрипт в своих шаблонах на свое усмотрение. Не убирайте только копирайт.

Помощь по разблокировке
Для того чтобы снять блок и увидеть скрытое содержание, подпишитесь на RSS канал блога.
Кликните по иконке или введите свой e-mail ниже:

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

В статьях, получаемых Вами через RSS, содержание всегда открыто.
Нашел ошибку в тексте? Выдели ее мышкой и нажми Система Orphus
СЛЕДИТЕ ЗА НОВОСТЯМИ Подписаться на мой Twitter
Автор: Олег МедынскийРубрика: Делюсь опытом
Разрешается перепечатка статьи с обязательным указанием открытой ссылки на источник.

КОММЕНТАРИИ К СТАТЬЕ

  1. 1.1

    А какой способ по вашему лучше. Плагины или скрипт?

    • 1.2

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

  2. 1.3

    Здравствуйте. Я не просек – как можно ознакомится со скриптом? Он платный? Если нет, то как стать подписчиком RSS (и вообще что это и зачем оно мне будет нужно)?

    • 1.4

      Скрипт открыт для скачивания подписчикам моего RSS канала блога. Зачем нужен RSS? Для того чтобы оперативно получать новые статьи блога в ваш RSS риадер или на почту. Это своего рода ваше спасибо за мою работу. В будущем я буду выкладывать много скриптов и плагинов которые будут помогать блоггерам решать ту или иную задачу. Подписка на RSS очень проста. Если вам мои статьи не понравятся вы всегда можете отписаться.

  3. 1.5

    Хотел попробовать скрипт на новом сайте о лаках и красках, но не все так просто оказалось. Подписался даже на подписку, и теперь что придеться ждать когда к вам придет муза и вы чегонибуть опубликуете? Очень неудобно(((

    • 1.6

      В нашей жизни “просто” понятие относительное, а что у вас не так просто оказалось? Вы можете не ждать моей музы а задать конкретный вопрос на интересующую вас тему и получить оперативный ответ от меня или читателей блога. Это просто?

  4. 1.7

    Здравствуйте Олег, подписался на RSS, буду ждать кода.
    Ваш блог понравился, качественно и всё по теме! Так же меня впечатлил сам ВП, с которым познакомился месяц назад. Рассчитываю плодотворно дружить как с самими движком, так и с блогами как Ваш.

    • 1.8

      Здравствуйте, Вадим
      Благодарю за приятный отзыв о моем блоге.
      Код ждать нет необходимости. Он открыт в самом RSS, или возьмите код для блока из последней статьи RSS и откройте им блок.

  5. 1.9

    Олег, установил Ваш скрипт, работает. Но он делает ВТОРОЙ тег tittle, а это неправильно. Что делать – прописывать tittle в произвольных полях, убирать из шаблона, или корректировать работу скрипта?
    С вторым тегом, говорят, в бан можно попасть в гугле.

  6. 1.11

    а почему у себя не используешь на сайте этот удобный способ ?
    я в исходнике кода не нашел <meta name=“keywords” ?

    • 1.12

      Да, верно заметили, не использую в своей теме, просто потому что до этого купил wpSeo. А meta name=“keywords” не использую потому что с недавних пор решил отказаться именно от этого тега. Но не на всех страницах блога.

  7. 1.13

    Спасибо за замечательный скрипт, Олег! СЕО пошло, жду трафика.

  8. 1.15

    Привет, вопрос такой а где еще может быть прописано
    <meta name=“description” content=… и <meta name=“keywords” content=

    Поскольку в header.php я их не нашел, а description и keywords выводится дважды, со скрипта и стандартные.

  9. 1.16

    Все разобрался, проблема была в плагине Tags 2 Meta Generator

    • 1.17

      Отлично! При подключении скрипта нужно обязательно отключать другие плагины генерирующие мета теги, иначе будет конфликт.

  10. 1.18

    Кстати, насчет меток, есть какой нить плагин который сам бы проставлял метки, но так что бы 1 метка вила хотя бы на 5 статей?

  11. 1.20

    Еще созрел вопрос по поводу Вашего скрипта, а именно

    Страница архива (год, месяц, день) – title формируется из префикса и даты + title блога. Description и Keywords не указываются. Добавлен мета-тег

    Получается у меня из поиска выпадет весь календарь?
    Насколько это оправдывает то что не будет дублирующего контента?
    И еще вопрос, последнее время в гугле стали появляться в ошибках сканирования
    Не найдено 270 страниц, хотя у меня таких страниц ни когда не было на сайте, и самое что интересное на каждой странице выводятся символы которых нет ни где, например : 28bd, 20d7, 37.

  12.  
  1.  

Ваши вопросы, замечания, пожелания и предложения, по работе сайта, пишите на E-mail.
УВАЖАЕМЫЙ КОММЕНТАТОР!

Перед тем, как комментировать статью, прочтите правила поведения комментатора. Только после согласия с изложенными ниже правилами, Вы можете создавать комментарии на этом сайте.
  • ПРАВИЛА ЗАПОЛНЕНИЯ ФОРМЫ:
    1. Поле Имя - обязательное поле. Введите ваше Имя или Ник, по которому к вам будут обращаться другие комментаторы (английские или русские буквы и цифры);
    2. Поле E-mail - обязательное поле. Введите ваш электронный почтовый адрес для идентивикации вас при последующем комментировании (английские маленькие буквы и цифры);
    3. Поле Сайт - не обязательное поле. Если вы желаете чтобы ваше Имя или Ник стали ссылкой в комментарии, введите адрес вашего сайта.;
    4. Согласие с правилами комментирования - обязательная метка. Если Вы согласны с правилами отметьте эту метку для продолжения комментирования;
  • ПРИВЕТСТВУЕТСЯ:
    1. Конструктивная и аргументированная точка зрения на тему материала;
    2. Размещение своих отзывов, вопросов, предложений и т.д. по теме статьи;
    3. Уважительное и вежливое общение, как с автором статьи и блога, так и с остальными комментаторами и посетителями блога;
    4. Размещение не более 2х ссылок на сайты, которые дополняют или наиболее раскрывают материал статьи;
  • ЗАПРЕЩАЕТСЯ:
    1. Использовать в комментариях ненормативную лексику, мат и любые другие грубые формы общения;
    2. Хамить другим комментаторам или автору блога;
    3. Выражать свои негативные эмоции (гнев, раздражение, нетерпение, агрессия и т.п.)
    4. Размещать ссылки рекламного характера на какие-либо продающие сайты и т.п.;
    5. Писать СПАМ или ФЛУД (писать сообщения, которые не имеют никакого отношения к теме обсуждаемого материала статьи или для получения обратной ссылки)
  • АВТОР БЛОГА ИМЕЕТ ПРАВО:
    1. Удалять или редактировать любые комментарии без объяснения причин тем, кто писал эти комментарии.
    2. Заблокировать тех комментаторов, которые систематически нарушали данные правила комментирования.
    3. Отвечать на те комментарии, которые автору показались наиболее разумными и интересными.