Як коментувати / відповідати noindex в Drupal 7


9

Я використовую Drupal 7, і я намагаюся використовувати метатег "noindex", щоб запобігти індексуванню пошукових систем http://example.com/comment/reply/43/738 .

Сторінка коментарів / відповідей індексується, хоча я використовував таку роль у robots.txt:

Disallow: /comment/reply/

У якому файлі шаблону мені потрібно включити метатег "noindex" для / коментар / відповідь / сторінки?


1
Яке правило ви записали у своєму robots.txtфайлі?
tostinni

@tostini: Я використав Disallow: / коментар / відповідь /
Naweed Chougle

Відповіді:


7

Ви можете використовувати будь-який з цього коду в robots.txt:

User-agent: *
Disallow: /*comment

Це нехтуватиме кожною URL-адресою, що містить коментар .

Ви також можете використовувати наступне, щоб нехтувати кожною URL-адресою, що містить / коментар .

User-agent: *
Disallow: /comment/reply
User-agent: *
Disallow: /comment

Після цього перевірте, працює він чи ні, використовуючи прапорець Google Robots.txt .


Що ти думаєш про це? google.co.in/support/forum/p/Webmasters/…
Naweed Chougle

Оскільки Noindex є метатегом, це запобіжить індексації всієї сторінки. Тепер ви відключили сканування коментарів зараз, щоб ви могли видалити індексовані посилання з Google за допомогою інструментів веб-майстрів. перейдіть до конфігурації сайту >> доступ сканера >> Видалити URL. Я думаю, що це буде кращим рішенням.
Vivek R

Після того як я видаляю URL-адреси за допомогою інструментів веб-майстрів, з’являються нові з тим же малюнком / коментар / відповідь /! І URL-адреси були індексовані, навіть якщо у файлі роботів використовувався файл Disallow: / comment / reply /.
Naweed Chougle

2
дайте трохи часу, щоб пошукова система видалилася ... це не відбудеться протягом ночі, тому зачекайте деякий час .. може бути тиждень або близько того.
Vivek R

Як я вже говорив раніше, URL-адреси індексувались навіть після того, як я використав Disallow / comment / reply / .... Це може статися через посилання на форму відповідей із зовнішніх сайтів. Я оновив своє запитання і включив подробиці про можливу потребу в тезі meta noindex.
Naweed Chougle

4

У template.php вашої теми або в page.tpl.php ви можете перевірити URL-адресу сторінки, щоб побачити, чи сторінка це сторінка коментарів, а потім додати код, який буде вставити метатег.

Це можна зробити у функції template.php YOURTHEME_preprocess_html () або вставити його десь у верхній частині сторінки.tpl.php. Код, який потрібно додати, буде приблизно таким:

    <?php
      $element = array(
        '#tag' => 'meta', 
        '#attributes' => array(
          'property' => 'robots',
          'content' => 'noindex',
        ),
      );
    drupal_add_html_head($element, 'robots');
?>

Див. Drupal_add_html_head () .


Дякую, @jmarkel! Чи можете ви допомогти мені програмно перевірити, що сторінка є на зразок: example.com/comment/reply/32/409 .... так що я можу встановити мета noindex лише для таких сторінок?
Naweed Chougle

1
Ось проблема - насправді не існує такого типу вузла, як коментар - вони, здається, живуть лише з тими вузлами, які коментують. Тож насправді їх неможливо розрізнити. Якщо натиснути постійну посилання коментаря, ви отримаєте URL-адресу, яка починається з "коментар /", але це не допоможе, оскільки вони не несуть цей URL всередині. Я припускаю, що ви можете шукати аргумент "сторінка" на наступних сторінках (тобто, коли є більше однієї сторінки коментарів), але вам все одно залишається розрізняти коментарі та інші сторінки за допомогою пейджера. Довга коротка історія - не впевнений, як це зробити ...
jmarkel

Поки що, @jmarkel, мені доведеться співпрацювати з інструментом для видалення URL-адрес веб-майстра Google. Переглядаючи одне із відео Метта Каттса, схоже, що щойно видалена URL-адреса не з’явиться. Проблема в тому, що я бачив нові, які з’являються в результатах пошуку!
Naweed Chougle

1

Оновлення : наступні роботи, він друкується <meta name="robots" content="noindex,follow" />в головному розділі всіх сторінок, до яких можна отримати шлях, починаючи з comment. Це потрібно обходити тим фактом, що сторінка типу коментар / 3 внутрішньо несе node / nid як аргументи, як вказував jmarkel.

<?php
function metarobots_comment_help() {
  $url_components = explode('/', request_uri());
  if ($url_components[1] == 'comment') {
    $elements = array(
      '#tag' => 'meta',
      '#attributes' => array(
        'name' => 'robots',
        'content' => 'noindex,follow',
      ),
    );
   drupal_add_html_head($elements, 'robots');
  }
}

За допомогою корисного коментаря до функції arg .

Сподіваємось, це врешті-решт буде вирішено модулем Meta Tags - є запит на функцію , але поки не ясно, чи хоче автор модуля це підтримати.


[Мій попередній коментар] Я просто хотів додати, що використання robots.txt не є відповіддю - як ви вже помітили, посилання постійно відображаються в результатах пошуку, незважаючи на використання Disallow: /comment. Це очікується, оскільки robots.txt каже боту не сканувати ці сторінки, але він не говорить Google не індексувати його. Як пояснено на SEOmoz Robots.txt та Meta Robots, найкращі практики оптимізації пошукових систем :

У більшості випадків мета-роботи з параметрами "noindex, follow" повинні використовуватися як спосіб обмеження сканування або індексації.

Блокувати за допомогою Robots.txt - Це вказує двигунам не сканувати вказану URL-адресу, але повідомляє, що вони можуть зберігати сторінку в індексі та відображати її в результатах.

Блокувати з Meta NoIndex - Це повідомляє двигунам, що вони можуть відвідувати, але їм не дозволяється відображати URL-адресу в результатах. (Це рекомендований метод) Отже, метатег noindex, який ви шукаєте, справді те, що вам потрібно.


Це правда, @arjan, ти перечитав один із коментарів, які я зробив із додатковими подробицями. Я шукаю спосіб встановити мета noindex для сторінок, які я не хочу в результатах пошуку.
Naweed Chougle

1
Так, здавалося, ви не впевнені на 100%, тому я хотів додати, що це правильно;)
arjan

@ProgrammingEnthusiast: див. Оновлення вище.
arjan
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.