카테고리의 주제에 "meta robots noindex"를 추가하는 방법을 찾습니다

SEO for Thin Content or Modify Meta Tags에서 이어서 토론을 진행합니다.

저도 여기서 같은 문제로 고생하고 있습니다.

WP-Discourse를 사용하고 있는데 정말 좋습니다! 하지만 새로운 블로그 포스트를 작성할 때마다 커뮤니티에 동일한 제목의 토픽이 생성됩니다. 동일한 제목을 가진 두 개의 URL은 검색 결과에서 서로의 중요도를 빼앗아 좋지 않은 현상입니다.

또한, 해당 토픽의 댓글이 블로그 포스트 아래에도 출력되어 중복 콘텐츠(여러 URL에 걸쳐 동일한 콘텐츠)가 생성됩니다.

이 둘 모두 도메인 패널티로 이어질 수 있는 심각한 SEO 문제입니다.

해결 방법은?

해결책은 카테고리 설정 상자에 간단한 체크박스를 추가하는 것입니다:

[ ] 이 카테고리의 토픽을 검색 결과에서 숨기기.

이 체크박스가 선택되면, 해당 카테고리 자체, 토픽, 페이지네이션 등 관련 페이지의 헤더에 noindex 태그가 삽입됩니다:

<meta name=“robots” content=“noindex, dofollow”>

이렇게 하면 사용자에게는 모든 것이 그대로 보이지만, 검색 엔진은 이를 무시하게 됩니다.


문제를 해결하지 못하는 방법들

몇 단계 앞서가서 몇 가지 일반적인 답변에 대해 언급하겠습니다. 이 문제에 관한 몇 가지 토픽을 보았는데, 모두 실제로 문제를 해결하지 못하는 제안들이었습니다.

Robots.txt

가장 일반적으로 제시되는 해결책은 robots.txt에 "disallow: /c/category/id"를 추가하는 것입니다. 하지만 이는 카테고리 자체만 검색 결과에서 제거할 뿐, 여기에서 주요 문제인 토픽은 제거하지 못합니다.

토픽의 URL 구조는 모두 동일하므로, robots.txt에 “disavow” 줄을 단순히 추가해서 이를 차단할 수 없습니다.

예:

Login | HSTS Redirection Community

토픽 비공개 설정(Unlist topics)

비공개로 설정된 토픽도 검색 엔진에는 여전히 보입니다. 커뮤니티 목록에서는 숨겨지지만, 직접 링크가 있으면 여전히 토픽에 접근할 수 있습니다. 그리고 우리는 사용자를 토픽으로 유도해야 하므로, 블로그 포스트에 해당 링크를 추가합니다. 따라서 검색 엔진은 모든 비공개 토픽도 발견하게 됩니다.

참고로, 이 링크에 nofollow를 적용한다고 해서 googlebot이 이를 무시하지는 않습니다: https://webmasters.googleblog.com/2019/09/evolving-nofollow-new-ways-to-identify.html

동시에, 토픽을 비공개로 설정하면 사용자가 커뮤니티 내에서 한 토픽에서 다른 토픽으로 이동할 수 없게 되어 사용자 참여도가 감소합니다.

따라서 이 아이디어는 아무것도 해결하지 못합니다. 참여도를 감소시킬 뿐, 검색 엔진에서 토픽을 전혀 숨기지 못합니다.

해당 카테고리의 토픽을 보기 위해 로그인 요구

새로운 사용자가 댓글 버튼을 클릭하면, 토픽 대신 "이 페이지는 존재하지 않습니다"라는 메시지를 봅니다. 사용자는 뭔가 고장 났다고 생각하고 사이트를 떠납니다. 따라서 댓글도 없고 새로운 사용자 가입도 없습니다. 참여도와 사용성 측면에서 매우 나쁩니다.


결론적으로, 이 옵션이 Discourse에 추가되거나 누군가가 간단한 플러그인을 개발해 주면 매우 유용할 것입니다.

이는 코어에 추가되어야 하며, 그렇지 않으면 googlebot이 자바스크립트를 무시할 것입니다.

SEO 담당자들이 이 기능을 매우 원할 것입니다!

4개의 좋아요

This doesn’t directly answer your question, but Discourse has a new embed set canonical url site setting that might help you. When that setting is enabled, the canonical URL of Discourse topics that have been created through the WP Discourse plugin or through the Discourse javascript embed code will be set to the URL of the associated blog post.

4개의 좋아요

That does help, thank you!

I didn’t knew about this new feature.

One question, though:

I’m not very familiar about how embed works, besides wp-discourse. If a user creates a topic pointing to other internal links, will it be set as canonical?

1개의 좋아요

No, if a user creates a topic by pasting a URL into the composer’s title field, a featured link will be created. This does not cause the featured link URL to be set as the canonical URL.

When the embed set canonical url site setting is enabled, topics that have an associated topic_embed will have their canonical URL set to the topic_embed’s URL. The Discourse javascript embed code does this automatically. It can also be done by creating a topic through the API and passing an embed_url property. This is how our WordPress plugin works.

3개의 좋아요

Hi @simon and team - good thread! I am facing the same issue here for my community (https://community.americanradioclub.com/). I would like to automatically post to discourse, but for some (if not all) posts from wordpress, I want to set a no-index on the discourse discussion in order to avoid duplicate content and be penalized in SEO. Has anyone found a good solution to this? Thanks!

3개의 좋아요

@James_Cribbs 이 문제를 해결할 수 있었나요?

해결할 문제가 없습니다. SEO 관련 질문도 전혀 없습니다. Discourse는 원래 항목이 WordPress 주소에 있다고 알려줍니다.

누군가 SER를 조작하여 동일한 검색 결과가 두 개 나오게 하려면 전체 콘텐츠가 달라야 합니다.

이 주제는 닫아야 합니다.