Googleインデックスとグループ別検索制限のバランス調整

Discourse フォーラムを、グループによってカテゴリの表示を厳密に制御するように構成しました。目標は、ログインユーザーに整理されたパーソナライズされたエクスペリエンスを提供すると同時に、SEO の目的で公開コンテンツへのアクセスを確保することです。現在の設定は次のとおりです。

:check_mark: グループベースのアクセス – 特定のカテゴリを表示するには、ユーザーはグループに参加する必要があります。
:check_mark: 追跡されたカテゴリ – グループに参加すると、ユーザーは自動的にその関連カテゴリを追跡します。
:check_mark: ミュートされたカテゴリの動作 – ミュートされたカテゴリはデフォルトで折りたたまれるはずです。
:check_mark: 検索権限 – ログインユーザーは、アクセス権のあるカテゴリからの検索結果のみを表示できるはずです。
:check_mark: SEO のための公開表示 – ログインしていない訪問者(Google クローラーを含む)は、すべてのカテゴリを表示し、インデックスを作成できるはずです。
:check_mark: オンボーディング要件 – 新規ユーザーは、参加する前にグループを選択する必要があります。

直面している課題

:small_blue_diamond: 1. グループベースのカテゴリ表示が期待どおりに機能しない

  • ユーザーがグループに参加すると、期待される動作は、グループのカテゴリがホームページとカテゴリページに表示されることです。
  • ただし、これはすぐに発生するわけではありません。カテゴリがまったく表示されない場合や、スクロールダウンしないと表示されない場合があります。
  • 以前に作成されたカテゴリ(例:採血技師)は正しく動作しますが、新しく作成されたカテゴリ(例:執行吏)は表示に時間がかかるか、手動でトリガーされるまで表示されません。
  • ユーザーは、期待される追跡/監視カテゴリの代わりに、ミュートされたカテゴリしか表示されないことがよくあります。
  • 一時的な修正: ユーザーが少なくとも 1 つのカテゴリを手動でミュート解除すると、参加している他のカテゴリが正しく表示され始めます。

:small_blue_diamond: 2. 無関係なカテゴリが表示される検索結果

  • ログインユーザーは、アクセス権のないカテゴリからの検索結果を表示しています。
  • 期待される動作: Discourse は、ユーザーのグループに割り当てられたカテゴリのみに検索結果を制限する必要があります。
  • 観察された動作: 検索は依然としてすべてのカテゴリからの結果を返しており、ユーザーは技術的にはアクセスできないはずのコンテンツのスニペットを見ることができます。
  • 関連するディスカッション: ask[.]discourse[.]com での会話は、Discourse がグループ権限に基づいて検索結果を制限すべきであることを確認しています。

:small_blue_diamond: 3. SEO と Google クローリング対制限アクセス

  • コンテンツが検索結果で見つけられるように、すべてのカテゴリを Google にインデックス作成してほしいと考えています
  • ただし、ログインユーザーにすべてのカテゴリをデフォルトで表示したくはありません。選択したグループに関連付けられたカテゴリのみを表示したいと考えています。
  • 現在の問題: ログインユーザーからカテゴリを非表示にすると、Google からも消えるため、インデックス作成できなくなります。
  • 理想的な解決策: Google はすべてのカテゴリをクロールしてインデックスを作成できる必要がありますが、ログインユーザーの検索結果は、グループ権限に基づいて引き続き制限される必要があります。

コミュニティへの質問

:one: 参加したカテゴリがすぐに、ミュートされたカテゴリの上に表示されるようにするにはどうすればよいですか?
:two: SEO のためにコンテンツを公開したまま、ログインユーザーの検索結果制限を完全に実施するにはどうすればよいですか?
:three: Google がすべての公開カテゴリをインデックス作成できるようにしながら、ログインユーザーがグループに参加するまで非表示にする方法はありますか?
:four: 公開読者がコンテンツを見つけるのを妨げることなく、サインアップ時にグループ選択を強制する最良の方法は何ですか?

関連ディスカッションと参考資料

:pushpin: グループベースのカテゴリアクセスが期待どおりに機能しない – カテゴリ表示の遅延、ミュートされたカテゴリが追跡設定をオーバーライドすること、および検索動作の問題に関するディスカッション。

:pushpin: [検索結果はグループ権限によって制限されます (ask[.]discourse[.]com)] – Discourse がグループ権限に基づいて検索結果を制限することを確認していますが、これを SEO とバランスさせる方法が必要です。

:pushpin: 問題のビデオデモンストレーション:

ミュートは制限ではありません。ランダムユーザーやGoogleにコンテンツを表示するには everyone を使用する必要があるため、ミュートしているかどうかにかかわらず、すべてのユーザーがそれらのカテゴリすべてにアクセスでき、検索結果も正しく表示されます。

グループ制限を使用しており、同時にログインしていない訪問者やGoogleをそれらの制限されたカテゴリから除外している場合、それはバグです。しかし、ここでは(そして私のフォーラムでも)機能しているため、それは疑わしいです。

そのため、読み取りには everyone を使用していると推測します。

返信ありがとうございます、@Jagster@emonunix と一緒に作業しています。

達成しようとしていることは次のとおりです。

  • ユーザーに、カテゴリへのアクセス権を持つ個別のグループへのアクセス権を付与したい
  • これらのグループに含まれていないすべてのカテゴリを非表示にしたい
  • Google にすべて(すべてのカテゴリ)をインデックス作成させたい

現在、サイトに来たユーザーからカテゴリを非表示にする方法として「ミュート」を使用しています。カテゴリにアクセスするにはグループに参加する必要があります。

面白いのは、グループ内のカテゴリのセットしか認識できないことです。ミュートされているため、他のカテゴリを「見ることが」できません。

次に、理論的にはアクセスできるカテゴリ内のものを検索し始めると、存在すら知らなかったカテゴリからの多くのものが表示されます。これは混乱を招きます。

これを達成する方法はありますか?

「いいね!」 1

同時に、すべてのユーザーがそれらのカテゴリすべてにアクセスでき、検索結果でそれらを見ることができるようにしたいです。

おそらく、プラグインなどを使用してそのグランドセキュリティルールを破ることができるかもしれませんが、最初からすべての人に何かを許可することは、同時にそれが誰のためでもないことを意味することになるため、起こりません。

Right @Jagster まさに私たちが尋ねている理由です。他に方法があったのかどうか分かりません。

理想的には、ログインユーザーはXでの表示と検索に限定され、ログアウトユーザー(Googleなど)はYを表示およびアクセスできるようにする方法があるはずです。

あるいは、ミュートされたカテゴリを検索ツールでアクセスできないようにするだけでよいのかもしれません…あるいは、それは単なる設計上の見落としでしょうか?ミュートされたものが自分のビューから見えなくなるのに、検索で見つけられるというのは奇妙に思えます…裏口のようです。

ミュートは、それが黙って /latest に表示されないことを意味します。ブロックされているわけではありません。何かを非表示にするにはグループを使用する必要があります。そうすれば、Google を締め出すことができます。そのコンテンツはもはや無料ではないため、そうすべきです。

登録ユーザーが Google で何かを検索して見つけ、それをクリックしてフォーラムに到着した場合、しかし制限されたカテゴリにいる場合、あなたは面白い立場になるでしょう。その時点でどうしますか?

  • サブスクリプションの強制
  • ログアウトして見知らぬ人として読むことを強制
  • エラー 403 を表示

ログインユーザーに対して何かをブロックし、ランダムなユーザーにはすべてを表示するというあなたの計画は、まだ理解できません。それは、あなたが持っているものを宣伝しているようなものですが、ユーザーが正しく選択しないと、それを得られないか、ログアウトしなければならないかのどちらかです。ほとんどのサイトは逆のことをします :smirking_face:

しかし、いいえ。ミュートはブロックではありません。