SEO оптимізація сторінок пагінацію в Drupal

Пагінація - це порядкова нумерація сторінок, яка зазвичай знаходиться вгорі або внизу сторінок сайту.

Пагінація - це порядкова нумерація сторінок, яка зазвичай знаходиться вгорі або внизу сторінок сайту

Багато оптимізаторів не приділяють достатньої уваги питанню оптимізації сторінок пагінацію і часто просто закривають їх від індексації в robots.txt, залишаючи лише першу сторінку. Ми не будемо вдаватися в докладний опис всіх варіантів правильної оптимізації таких сторінок, подібних статей написано вже досить, раджу ознайомиться що радить з цього питання безпосередньо Google , і Яндекс .

Розглянемо найбільш пріоритетний з моєї точки зору варіант - оптимізацію сторінок пагінацію з використанням тегів rel = "next" і rel = "prev" а також cannonical на прикладі сайтів на CMS Drupal. Чому саме цей метод? Давайте розбиратися.

Уявімо що у вас інтернет магазин де є категорія товарів, скажімо, "Відеореєстратори". У категорії додано близько 1000 різних реєстраторів, але якщо ми перейдемо на сторінку категорії, то там вони будуть виводитися посторінково, по 40 шт на сторінку. Якщо ми закриваємо сторінки пагінацію від індексації, то теоретично обмежуємо її видимість наповненості для роботів пошукових систем тільки першою сторінкою, тобто сорока товарами. А завдання пошукових систем, як ми знаємо, дати найбільш повну відповідь на пошуковий запит користувачів. Тобто, в нашому випадку, в числі всіх інших алгоритмів на запит "Купити відеореєстратори" також буде враховуватися і кількість пропозицій на сайті (сторінці категорій), і наше завдання не приховувати від пошукових роботів весь асортимент товару доступний в даній категорії.

Використання rel = "next" і rel = "prev" для сторінок пагінацію - рекомендація Google, Яндекс з цього питання нічого не говорить, аби сторінки були відкриті на індексацію. Другий момент - атрибут rel = "canonical". Google допускає проставляти на кожну сторінку свого rel = "canonical", тобто наприклад:

<Link rel = "canonical" href = "http://www.example.com/article?story=abc&page=2" /> <link rel = "prev" href = "http://www.example.com/ article? story = abc & page = 1 & sessionid = 123 "/> <link rel =" next "href =" http://www.example.com/article?story=abc&page=3&sessionid=123 "/>

Яндекс ж навпаки рекомендує ставити rel = "canonical" на першу сторінку, передаючи тим самим весь вага інших сторінок. Це як на мене і є найбільш правильний варіант, який ми і будемо використовувати надалі.

CMS Drupal як приклад обрана тому, що це моя улюблена CMS з якою я постійно працюю))

1. Необхідні модулі:

  1. Metatag (І вміння працювати з ним)
  2. Custom Tokens
  3. Pager Tokens

Встановлюємо все, і за допомогою модуля Custom Token створюємо власний токен, який буде відповідати за виведення номера сторінок в тегах Title і Description для того, щоб вони не вважалися дублями. Отже, переходимо до створення токена (admin / structure / token-custom / add) і вставляємо приблизно наступний код:

<? Php $ output = ''; $ Url = $ _SERVER [ 'REQUEST_URI']; $ Findpage = '? Page ='; $ Pos = strpos ($ url, $ findpage); if ($ pos == true) {$ result = substr ($ url, strpos ($ url, '=') + 1, strlen ($ url)); $ Result * = 1; $ Result ++; $ Output = '- Ваш Бренд - сторінка'. $ Result; } Return $ output; ?>

Вийде має щось на зразок такого:

2. Налаштування метатегов

Зберігаємося і переходимо в настройки метатегов, і в потрібному варіанті тегів, який передбачає наявність сторінок пагінацію, заповнюємо їх наступним чином:

  1. У заголовку пишемо потрібний нам тайтл і в кінці ставимо наш створений раніше кастом токен [ "custom: pager-number"]
  2. В описі пишемо мета опис, і в кінці теж ставимо кастом токен [ "custom: pager-number"]
  3. В поле "Канонічний URL" вставляємо токен [ "current-page: url: absolute"]
  4. В поле "Посилання на попередню сторінку" вставляємо [ "current-page: url: with-previous-page-number"]
  5. В "Посилання на наступну сторінку" [ "current-page: url: with-next-page-number"]

!! В квадратних дужках приберіть "", я поставив, так як СK editor виправляє ці маркери в працюючі посилання))

В результаті маємо отримати приблизно наступне:

В результаті маємо отримати приблизно наступне:

Зверніть увагу, що канонічна сторінка у нас вийде одна - це перша сторінка. Тобто, всі інші сторінки пагінацію відкриті для індексації, у них різні теги Meta Title і Description, завдяки тому, що ми вставили номера сторінок, але при цьому, на всіх сторінках пагінацію в тезі rel = "cannonical" буде стояти посилання на найпершу , основну сторінку. Ось приклад коду другої сторінки однієї з категорій мого блогу:

3. Відкриваємо сторінки для індексації в robots.txt

  1. Перевіряємо чи доступні для індексації сторінки з URL типу: site / category? Page = 1 (наприклад в Яндекс вебматере за допомогою інструменту " аналіз robots.txt ")
  2. Якщо сторінки пагінацію закриті для роботів - додаємо в robots.txt директиву: Allow: *? Page

Чому саме цей метод?
Com/article?
Com/ article?
Com/article?
Php $ output = ''; $ Url = $ _SERVER [ 'REQUEST_URI']; $ Findpage = '?
Result; } Return $ output; ?