Làm thế nào để bình luận / trả lời noindex trong Drupal 7


9

Tôi sử dụng Drupal 7 và tôi đang cố gắng sử dụng thẻ meta "noindex" để ngăn http://example.com/comment/reply/43/738 không bị lập chỉ mục bởi các công cụ tìm kiếm.

Trang nhận xét / trả lời đang được lập chỉ mục, mặc dù tôi đã sử dụng vai trò sau trong robot.txt:

Disallow: /comment/reply/

Trong tệp mẫu nào tôi sẽ cần kết hợp thẻ meta "noindex" cho / bình luận / trả lời / trang?


1
Quy tắc nào bạn đã viết trong robots.txttập tin của bạn ?
tostinni

@tostini: Tôi đã sử dụng Disallow: / bình luận / trả lời /
Naweed Chougle

Câu trả lời:


7

Bạn có thể sử dụng bất kỳ mã nào trong robot.txt:

User-agent: *
Disallow: /*comment

Điều này sẽ bỏ qua mọi URL có chứa bình luận .

Bạn cũng có thể sử dụng thông tin sau, để bỏ qua mọi URL chứa / nhận xét .

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

Sau khi bạn thực hiện việc này, hãy kiểm tra xem nó có hoạt động hay không bằng cách sử dụng trình kiểm tra Google Robots.txt .



Vì Noindex là thẻ meta, nó sẽ ngăn toàn bộ trang được lập chỉ mục. Bây giờ bạn đã vô hiệu hóa các nhận xét được thu thập thông tin để bạn có thể xóa các liên kết được lập chỉ mục khỏi Google bằng các công cụ quản trị trang web. đi đến cấu hình trang web >> truy cập trình thu thập thông tin >> Xóa URL. Tôi nghĩ rằng đây sẽ là giải pháp tốt hơn.
Vivek R

Sau khi tôi xóa URL bằng các công cụ quản trị trang web, các công cụ mới có cùng mẫu / nhận xét / trả lời / xuất hiện! Và các URL đã được lập chỉ mục ngay cả khi Disallow: / comment / reply / đang được sử dụng trong tệp robot.
Naweed Chougle

2
hãy dành một chút thời gian để công cụ tìm kiếm gỡ bỏ..tôi sẽ không xảy ra qua đêm vì vậy hãy đợi một thời gian..có thể là một tuần hoặc lâu hơn.
Vivek R

Như tôi đã nói trước đó, các URL đã được lập chỉ mục ngay cả sau khi tôi sử dụng Disallow / bình luận / trả lời / .... Điều này có thể xảy ra do các liên kết đến biểu mẫu trả lời đến từ các trang web bên ngoài. Tôi đã cập nhật câu hỏi của mình và bao gồm các chi tiết về nhu cầu có thể có của thẻ meta noindex.
Naweed Chougle

4

Trong template.php của chủ đề hoặc trong page.tpl.php, bạn có thể kiểm tra url của trang để xem trang đó có phải là trang nhận xét hay không, sau đó thêm mã sẽ chèn thẻ meta.

Bạn có thể thực hiện việc này trong hàm template.php YOUTHEME_pre process_html () hoặc chèn nó vào đâu đó gần đầu trang.tpl.php. Mã để thêm sẽ là một cái gì đó như thế này:

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

Xem drupal_add_html_head () .


Cảm ơn, @jmarkel! Bạn có thể giúp tôi kiểm tra, lập trình, rằng trang đó có nội dung như: example.com/comment/reply/32/409 .... để tôi chỉ có thể đặt meta noindex cho các trang đó không?
Naweed Chougle

1
Đây là vấn đề - thực sự không có bất kỳ loại nút nào như một bình luận - chúng dường như chỉ sống với các nút mà chúng đang bình luận. Vì vậy, thật sự không thể phân biệt chúng một cách khái quát. Nếu bạn nhấp vào permalink của một bình luận, bạn sẽ nhận được một url bắt đầu bằng 'bình luận /' nhưng điều đó không có ích vì họ không mang theo url đó trong nội bộ. Tôi cho rằng bạn có thể tìm kiếm đối số "trang" trên các trang tiếp theo (nghĩa là khi có nhiều hơn một trang bình luận) nhưng bạn vẫn phải phân biệt giữa các bình luận và các trang khác bằng cách sử dụng máy nhắn tin. Câu chuyện dài - không biết phải làm thế nào ...
jmarkel

Hiện tại, @jmarkel, tôi sẽ phải sống với công cụ xóa URL của quản trị trang web của Google. Đi qua một trong những video của Matt Cutts, có vẻ như một URL đã bị xóa sẽ không xuất hiện lại. Vấn đề là tôi đã thấy những cái mới xuất hiện trong kết quả tìm kiếm!
Naweed Chougle

1

Cập nhật : các công việc sau đây, nó in <meta name="robots" content="noindex,follow" />trong phần đầu của tất cả các trang được truy cập thông qua một đường dẫn bắt đầu bằng comment. Điều này là để giải quyết thực tế là một trang như bình luận / 3 bên trong mang nút / nid làm đối số, như jmarkel đã chỉ ra ở trên.

<?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');
  }
}

Với sự trợ giúp của một nhận xét hữu ích về chức năng arg .

Hy vọng rằng điều này cuối cùng sẽ được giải quyết bằng mô-đun Meta Tags - có một yêu cầu tính năng , nhưng vẫn chưa rõ nếu tác giả mô-đun muốn hỗ trợ điều này.


[Nhận xét trước của tôi] Tôi chỉ muốn thêm rằng sử dụng robot.txt không phải là câu trả lời - như bạn đã nhận thấy, các liên kết tiếp tục xuất hiện trong kết quả tìm kiếm mặc dù sử dụng Disallow: /comment. Điều này được mong đợi, vì robot.txt bảo bot không thu thập dữ liệu các trang đó, nhưng nó không bảo Google không lập chỉ mục cho nó. Như đã giải thích trên SEOmoz Robots.txt và Meta Robots Thực tiễn tốt nhất để tối ưu hóa công cụ tìm kiếm :

Trong hầu hết các trường hợp, các robot meta có tham số "noindex, follow" nên được sử dụng như một cách để hạn chế thu thập dữ liệu hoặc lập chỉ mục.

Chặn với Robots.txt - Điều này cho các công cụ không thu thập dữ liệu URL đã cho nhưng cho họ biết rằng họ có thể giữ trang trong chỉ mục và hiển thị trong kết quả.

Chặn với Meta No Index - Điều này cho biết các công cụ họ có thể truy cập nhưng họ không được phép hiển thị URL trong kết quả. (Đây là phương pháp được đề xuất) Vì vậy, thẻ meta noindex mà bạn theo đuổi thực sự là thứ bạn cần.


Đó là sự thật, @arjan, bạn đã trình bày lại một trong những bình luận tôi đã đưa ra với các chi tiết bổ sung. Tôi đang tìm cách đặt meta noindex cho các trang tôi không muốn trong kết quả tìm kiếm.
Naweed Chougle

1
Vâng, có vẻ như bạn không chắc chắn 100% nên tôi muốn thêm rằng nó đúng;)
arjan

@ProgrammingEnthusiast: xem cập nhật ở trên.
arjan
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.