# Блокировать краулеры только для встроенных тем?

**URL:** https://meta.discourse.org/t/block-crawlers-from-embedded-topics-only/268916
**Category:** Support
**Created:** [19.Июнь.2023 15:34:53 UTC](https://meta.discourse.org/t/block-crawlers-from-embedded-topics-only/268916 "2023-06-19T15:34:53Z")
**Posts on this page:** 18
**Page:** 1

<div class="post-metadata">

### Author: ![haydenjames](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/haydenjames/32/255678_2.png) [@haydenjames](https://meta.discourse.org/u/haydenjames)
#### Post date: [19.Июнь.2023 15:34:53 UTC](https://meta.discourse.org/t/block-crawlers-from-embedded-topics-only/268916/1 "2023-06-19T15:34:53Z")

</div>

Помимо ручной настройки, возможно ли настроить robots.txt для блокировки всех связанных с WP-Discourse тем форума?  
(чтобы посты форума не индексировались)

Есть ли простая опция-переключатель, позволяющая запретить поисковым роботам сканировать все связанные тем форума? Или хотя бы настройка-переключатель для каждого поста при публикации или редактировании записи WP, связанной с темой форума в WP-Discourse?

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [19.Июнь.2023 15:47:29 UTC](https://meta.discourse.org/t/block-crawlers-from-embedded-topics-only/268916/2 "2023-06-19T15:47:29Z")

</div>

> [@Хейден Джеймс](#):
>
> Помимо ручного способа, можно ли настроить robots.txt для блокировки всех тем форума, связанных с WP-Discourse?  
> (чтобы пост форума не индексировался)

Зачем вы хотите это сделать? Я почти уверен, что пост форума содержит ссылку на каноническую версию на вашем сайте WordPress.

---

<div class="post-metadata">

### Author: ![haydenjames](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/haydenjames/32/255678_2.png) [@haydenjames](https://meta.discourse.org/u/haydenjames)
#### Post date: [19.Июнь.2023 15:56:43 UTC](https://meta.discourse.org/t/block-crawlers-from-embedded-topics-only/268916/3 "2023-06-19T15:56:43Z")

</div>

После добавления наблюдается снижение ранжирования/репутации статей Википедии (оригинальных). Я не хотел начинать дискуссию или жаловаться, просто спрашиваю, как этого добиться. Уверен, что есть и многие другие причины, по которым другие могут хотеть иметь такой уровень контроля над тем, что индексируется.

---

<div class="post-metadata">

### Author: ![Jagster](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jagster/32/192154_2.png) [@Jagster](https://meta.discourse.org/u/Jagster)
#### Post date: [19.Июнь.2023 16:14:41 UTC](https://meta.discourse.org/t/block-crawlers-from-embedded-topics-only/268916/4 "2023-06-19T16:14:41Z")

</div>

> [@Хейден Джеймс](#):
>
> Я не хотел начинать спор или жаловаться, просто спрашивал, как этого добиться.

Просто предлагаю: возможно, вам стоит переопределить свои цели, так как вы движетесь не в ту сторону.

Но с обратным прокси это довольно тривиальная задача.

---

<div class="post-metadata">

### Author: ![MikeNolan](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/mikenolan/32/297597_2.png) [@MikeNolan](https://meta.discourse.org/u/MikeNolan)
#### Post date: [19.Июнь.2023 16:44:31 UTC](https://meta.discourse.org/t/block-crawlers-from-embedded-topics-only/268916/5 "2023-06-19T16:44:31Z")

</div>

Не все веб-краулеры соблюдают файл robots.txt.

---

<div class="post-metadata">

### Author: ![angus](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/angus/32/341715_2.png) [@angus](https://meta.discourse.org/u/angus)
#### Post date: [19.Июнь.2023 17:51:26 UTC](https://meta.discourse.org/t/block-crawlers-from-embedded-topics-only/268916/6 "2023-06-19T17:51:26Z")

</div>

Привет, @haydenjames,

В плагине [WP Discourse](https://github.com/discourse/wp-discourse) нет возможности добавлять создаваемые им посты в файл robots.txt. Это, по сути, вопрос, касающийся только самого Discourse: «Можно ли автоматически устанавливать noindex для встраиваемых тем?» (или что-то в этом роде). Встраиваемая тема из WordPress функционально ничем не отличается от любой другой встраиваемой темы. Вам стоит направить свои поиски в эту сторону, например, изучить происхождение настройки сайта `embed set canonical url` и связанные обсуждения.

> [@Add option to set canonical\_url to embed\_url](https://meta.discourse.org/t/add-option-to-set-canonical-url-to-embed-url/103915):
>
> From time to time we get requests to set the canonical URL of embedded topics to the URL of the blog post. I’ve created a [pull request](https://github.com/discourse/discourse/pull/6741) that does exactly that. It unconditionally uses the URL of the original blog post (embed\_url) as canonical for the topic. There have been various previous discussions like [Google indexed link not pointing to the correct post](https://meta.discourse.org/t/google-indexed-link-not-pointing-to-the-correct-post/61443) and [Duplicate Content](https://meta.discourse.org/t/duplicate-content/91745) in the past. After reading those posts I’m not so sure about my solution anymore, so I’d like to get some feedback f…

Я не думаю (но готов признать свою ошибку), что то, что вы хотите сделать, является текущей функцией Discourse. В настоящее время Discourse добавляет заголовок `X-Robots-Tag: noindex` к GET-запросам для скрытых тем. Вы можете сделать то же самое для встраиваемых тем с помощью плагина.

---

<div class="post-metadata">

### Author: ![haydenjames](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/haydenjames/32/255678_2.png) [@haydenjames](https://meta.discourse.org/u/haydenjames)
#### Post date: [19.Июнь.2023 18:22:38 UTC](https://meta.discourse.org/t/block-crawlers-from-embedded-topics-only/268916/7 "2023-06-19T18:22:38Z")

</div>

Иду не в ту сторону, чтобы заблокировать индексацию ветки форума с дублирующейся статьёй, которую я предпочитаю, чтобы пользователи Google находили через блог WP? Для меня это нормально. Основное преимущество плагина WP-Discourse для меня — возможность обсуждать посты блога без использования таких решений, как Disqus или очень ограниченные стандартные комментарии WP. Мне не нужна SEO-выгода от форумов, если только это не уникальные ветки, не связанные с уже существующим контентом.

---

<div class="post-metadata">

### Author: ![Jagster](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jagster/32/192154_2.png) [@Jagster](https://meta.discourse.org/u/Jagster)
#### Post date: [19.Июнь.2023 18:26:44 UTC](https://meta.discourse.org/t/block-crawlers-from-embedded-topics-only/268916/8 "2023-06-19T18:26:44Z")

</div>

> [@haydenjames](#):
>
> с дубликатом статьи

Дубликатов нет, если вы ничего не меняли.

Потому что:

> [@pfaffman](#):
>
> на каноническую версию на вашем сайте WP

И:

> [@angus](#):
>
> Тема, внедрённая из WordPress, функционально ничем не отличается от любой другой внедрённой темы. Направление расследования, которое вам нужно, находится именно там, например, в источнике настройки сайта `embed set canonical url` и связанных обсуждениях.

---

<div class="post-metadata">

### Author: ![haydenjames](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/haydenjames/32/255678_2.png) [@haydenjames](https://meta.discourse.org/u/haydenjames)
#### Post date: [19.Июнь.2023 18:28:05 UTC](https://meta.discourse.org/t/block-crawlers-from-embedded-topics-only/268916/9 "2023-06-19T18:28:05Z")

</div>

> [@angus](#):
>
> Я не думаю (но готов быть поправленным), что то, что вы хотите сделать, является текущей функцией Discourse. В настоящее время Discourse добавляет заголовок `X-Robots-Tag: noindex` к GET-запросам для скрытых тем. Вы можете сделать то же самое для встроенных тем с помощью плагина.

Спасибо, @angus.

Уточню: если я скрою категорию, в которой хранятся посты, связанные с WP-discourse (отличается ли «скрытый» от «приватного»?), то пост будет скрыт от форумов/публичного доступа/поисковых роботов, но встроенные комментарии в конце каждого поста блога WordPress с комментариями останутся видимыми?

Извините за вопросы новичка, я не очень знаком с Discourse и хочу убедиться, что правильно понимаю ваш ответ.

---

<div class="post-metadata">

### Author: ![haydenjames](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/haydenjames/32/255678_2.png) [@haydenjames](https://meta.discourse.org/u/haydenjames)
#### Post date: [19.Июнь.2023 18:33:11 UTC](https://meta.discourse.org/t/block-crawlers-from-embedded-topics-only/268916/10 "2023-06-19T18:33:11Z")

</div>

> [@Jagster](#):
>
> Дубликатов нет, если вы ничего не меняли.

…зависит от вашего определения «дубликата». Каноническая ссылка установлена, но для меня лично, поскольку и пост в блоге, и тема на форуме содержат точную копию текста (дубликат), я хотел бы просто полностью блокировать такие темы. Это просто моё предпочтение. Возможно, в будущем смысл этой темы станет более понятным. Но пока я честно не пытаюсь спровоцировать спор или что-то в этом роде. Я считаю, что блокировка — более _абсолютное_ решение для меня.

Это как пойти к механику и попросить его «дважды поменять масло». Я понимаю первоначальную логику от @angus, но в итоге речь идёт лишь о том, можно ли это как-то сделать или нет.

Редактирование: Теперь, подумав, я мог бы просто добавить категорию форума с постами блога в robots.txt, верно? Или это будет перезаписано? (Я поищу на форумах информацию о том, как работает robots.txt в Discourse и как его можно редактировать).

Так что что-то вроде:  
[forum.domain.com/c/blog-articles/xx/\*](http://forum.domain.com/c/blog-articles/xx/*)

---

<div class="post-metadata">

### Author: ![angus](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/angus/32/341715_2.png) [@angus](https://meta.discourse.org/u/angus)
#### Post date: [19.Июнь.2023 18:40:05 UTC](https://meta.discourse.org/t/block-crawlers-from-embedded-topics-only/268916/11 "2023-06-19T18:40:05Z")

</div>

«Скрытая» тема — это тема, которая не отображается в списках тем, то есть её невозможно «найти» обычным способом. Скрытую тему можно определить по значку глаза с перечёркивающей его линией.

 ![Screenshot 2023-06-19 at 20.37.37](https://global.discourse-cdn.com/meta/original/4X/a/9/6/a965f63f9f64edf5e1a5e3462b1a823e358c2f17.png)

> [@haydenjames](#):
>
> Уточню: если я сделаю категорию, в которой хранятся посты, подключённые через WP-discourse, скрытой (отличается ли «скрытая» от «приватной»?), то пост будет скрыт из форумов/публичного доступа/поисковых роботов, но вставленные комментарии в конце каждого поста блога WordPress с комментариями останутся видимыми?

На самом деле есть способ автоматически делать посты из плагина [WP Discourse](https://github.com/discourse/wp-discourse) «скрытыми» 🙂 Вы можете использовать настройку «Опубликовать как невидимые темы».

 ![Screenshot 2023-06-19 at 20.35.41](https://global.discourse-cdn.com/meta/original/4X/6/0/8/60857c346dff9c5aba7173bfec83404422ee0a50.png)

Помните о том, что я сказал выше, а также о тексте рядом с этой настройкой. Это означает, что темы, опубликованные из Discourse в WordPress, не будут отображаться в списках тем вашего форума. Комментарии будут работать в обычном режиме. Если у вас включен вебхук синхронизации данных комментариев, то после первого комментария тема перестанет быть скрытой. Эта функция не была изначально предназначена для таких целей. Подробнее см.

> [@Hide topic until first reply](https://meta.discourse.org/t/hide-topic-until-first-reply/93308):
>
> I’m wondering if it’s possible to default the new topics from Wordpress to “hidden” or something, until somebody bothers to comment on them. We put up a lot of posts, and some of them will generate significant discussion, but others not so much. I’m worried about having Discourse cluttered with a lot of posts that have no activity. I see a similar question here which says it isn’t possible: However, I swear I saw something like this option somewhere in the past. Perhaps now I’m just missing t…

Если вы хотите просто добавить заголовок `X-Robots-Tag: noindex` к встроенной теме (не вдаваясь в вопросы скрытия), вам нужно либо запросить эту функцию как новую возможность самого Discourse, либо добавить её через плагин.

---

<div class="post-metadata">

### Author: ![haydenjames](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/haydenjames/32/255678_2.png) [@haydenjames](https://meta.discourse.org/u/haydenjames)
#### Post date: [19.Июнь.2023 18:45:48 UTC](https://meta.discourse.org/t/block-crawlers-from-embedded-topics-only/268916/12 "2023-06-19T18:45:48Z")

</div>

Это здорово. Спасибо за уточнение и за то, что поделились настройкой [WP Discourse](https://github.com/discourse/wp-discourse).

Вопрос: Если я вручную отредактирую файл robots.txt на Discourse, сохранится ли это изменение?

Я всё ещё ищу ответ на этот вопрос на форумах. Если найду какие-либо ссылки с ответом, добавлю их.

---

<div class="post-metadata">

### Author: ![angus](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/angus/32/341715_2.png) [@angus](https://meta.discourse.org/u/angus)
#### Post date: [19.Июнь.2023 18:50:38 UTC](https://meta.discourse.org/t/block-crawlers-from-embedded-topics-only/268916/13 "2023-06-19T18:50:38Z")

</div>

> [@haydenjames](#):
>
> Вопрос: Если я вручную отредактирую файл robots.txt на моём Discourse, сохранятся ли изменения?

Если вы сделаете это через `/admin/customize/robots`, изменения сохранятся.

 ![Screenshot 2023-06-19 at 20.50.19](https://global.discourse-cdn.com/meta/original/4X/5/9/4/594ff5c632742f2df27eaf7801553623dccedaf8.png)

Эти данные хранятся в скрытом параметре сайта под названием `overridden_robots_txt`. Если он заполнен, то всегда будет использоваться как ваш файл robots.txt.

---

<div class="post-metadata">

### Author: ![angus](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/angus/32/341715_2.png) [@angus](https://meta.discourse.org/u/angus)
#### Post date: [19.Июнь.2023 18:58:17 UTC](https://meta.discourse.org/t/block-crawlers-from-embedded-topics-only/268916/14 "2023-06-19T18:58:17Z")

</div>

@haydenjames Последнее, что я хотел бы отметить, — похоже, что в последнее время возникла проблема с каноническим URL встраиваемых тем. Имейте это в виду, если вы только что заметили эту проблему.

> [@Embedding is BROKEN in 3.0.4 (stable)](https://meta.discourse.org/t/embedding-is-broken-in-3-0-4/268559):
>
> I have the suspicion that this change broke how I use embedding on my website. Can someone point me to what exactly was changed? I use Discourse to create topics for posts on my blog (as a commenting system). My website is divided into two parts for two languages, so I use two hosts to filter the English (/blog/somepost) and German (/de/blog/somepost) posts into different forum categories. Posts from the German side of the website aren…

---

<div class="post-metadata">

### Author: ![haydenjames](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/haydenjames/32/255678_2.png) [@haydenjames](https://meta.discourse.org/u/haydenjames)
#### Post date: [19.Июнь.2023 18:59:01 UTC](https://meta.discourse.org/t/block-crawlers-from-embedded-topics-only/268916/15 "2023-06-19T18:59:01Z")

</div>

> [@angus](#):
>
> /admin/customize/robots

Спасибо. Ах, всё не так просто, потому что URL каждой ветки не содержит категории. Придётся добавлять их вручную, по одной.

---

<div class="post-metadata">

### Author: ![haydenjames](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/haydenjames/32/255678_2.png) [@haydenjames](https://meta.discourse.org/u/haydenjames)
#### Post date: [19.Июнь.2023 19:01:56 UTC](https://meta.discourse.org/t/block-crawlers-from-embedded-topics-only/268916/16 "2023-06-19T19:01:56Z")

</div>

Принято. Спасибо. Отчасти поэтому я хотел бы использовать радикальный подход — просто заблокировать все встраиваемые посты WP-Discourse через robots.txt. Такие вещи случаются. Это понятно.

---

<div class="post-metadata">

### Author: ![Jagster](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jagster/32/192154_2.png) [@Jagster](https://meta.discourse.org/u/Jagster)
#### Post date: [20.Июнь.2023 05:06:41 UTC](https://meta.discourse.org/t/block-crawlers-from-embedded-topics-only/268916/17 "2023-06-20T05:06:41Z")

</div>

> [@Hayden James](#):
>
> Зависит от вашего определения дубликатов.

Ваше или моё определение не имеет значения. Единственное важное определение — это определение Google. И тогда дубликатов нет.

Также есть вероятность, что Google ценит ваш форум выше, чем WordPress. В этом случае решение заключается не в попытке заблокировать индексацию, а в исправлении источника.

---

<div class="post-metadata">

### Author: ![haydenjames](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/haydenjames/32/255678_2.png) [@haydenjames](https://meta.discourse.org/u/haydenjames)
#### Post date: [20.Июнь.2023 10:09:50 UTC](https://meta.discourse.org/t/block-crawlers-from-embedded-topics-only/268916/18 "2023-06-20T10:09:50Z")

</div>

Хотя тег rel=canonical может помочь избежать штрафа за дублирование контента при повторной публикации постов, вы всё равно можете получить штраф, если неправильно используете этот тег. Я найду решение. Вернусь к этой теме позже.
