こんにちは ![]()
当フォーラムの訪問者フローを刷新した方法について共有したい思います。私たちのコミュニティは電子タバコ(e-cigarette)を中核としているため、法的規制と厳格な18歳以上の年齢制限により、トピックを一般公開から隠す必要があります。訪問者がフォーラム内の認可されていないページを開こうとすると、システムはアクセスをブロックし、/loginページにリダイレクトします。
このルールは単純に思えますが、深刻なUX上の問題を引き起こしており、私は独自のカスタムロジックを用いてこれを解決しました。
なぜ組み込みの「ログイン必須」設定を使わないのか?
最も明らかな解決策は、管理パネルでグローバルロックを有効にすることでした。しかし、私たちは一つ大きな理由でこれをできませんでした:SEOです。
組み込みのロックを使用すると、Discourseは検索エンジンのクローラー(Googlebot、Bingなど)も遮断してしまいます。これにより、フォーラムはGoogleでのランキングを失い、検索結果やAIの推奨から完全に姿を消すことになります。
ボットは通常通りコンテンツにアクセスしてインデックス化できますが、人間の訪問者はブロックされ、ログイン画面にリダイレクトされます。
問題:失われる訪問者
私たちのカスタムゲートウェイには以前、一つ重大な欠点がありました。
目的地の喪失: 誰かがGoogleから特定のトピックをクリックした場合、ゲートウェイはすぐにサインインするようにリダイレクトしました。訪問者はログインページしか見えないため、本来見ようとしていた記事の特定URLを失い、多くの人がすぐにサイトを閉じてしまいました(これにより高いバウンスレートが発生しました)。
解決策:現在のフローの仕組み
現在、このプロセスは完全に摩擦なくスムーズになりました。外部リンク経由でゲストが到着したとき、裏側では以下のような処理が行われます。
-
ビジュアルティザー(トピックプレビューカード): 訪問者に冷たいログイン壁を突きつけるのを避けるため、ログインフォームの直上に情報カードが表示されます。これにより、リクエストされたトピックのタイトル、カバー画像、短いテキストスニペット、著者、返信数が即座に表示されます。これにより、ユーザーはログインする価値がある理由を明確に知ることができます。
-
コンテンツへの即時リダイレクト: ユーザーがログインまたは登録すると、Discourseは自動的にユーザーを本来読もうとしていた特定のトピックに直接リダイレクトします。
このロジックにより、フォーラムは厳格な年齢制限法に100%準拠し、Googleは問題なくページをインデックス化できます。また、プレビューカードは訪問者が何のコンテンツにアクセスできるのかを明確に示すため、ログインするための明確な理由を提供します。
