プリシードされた投稿がすべて欠落:利用規約、FAQ、プライバシーポリシーページが不足

こんにちは。Terms of Service、FAQ、またはプライバシーポリシーのページをクリックすると、空白のページが表示され、カーソルが永久に回転する「ビジー」状態のままになる問題が発生しています。

これをどのように修正すればよいでしょうか?

また、この情報を公開し、サイトURLにアクセスしたがまだパスワード保護されたアクセスに登録していない潜在的なユーザーの注意を引くにはどうすればよいでしょうか?

現状では、訪問者はログインダイアログのみをランディングページとして表示しており、フォーラムが自分に関連するかどうか、またはどのような条件が適用されるかについて、登録前に全く知る機会がありません。

現在、サイトとメールはフォーラムドメイン上ですべて設定され、正常に動作しています。そのため、ドメインを別のホストされたウェブページにリダイレクトし、フォーラムをサブドメインなどに移動するという提案を聞いたとしても、すべてを壊すリスクを冒したくありません。また、ドメインのランディングページにわずかな情報を追加するために、年間47ドルの有料プラグインを購入することも避けたいと考えています。

これらが本当に唯一の選択肢なのでしょうか?

そのため、Discourse をルートドメインではなく、discuss.example.com のようなサブドメインに配置することを推奨しています。

不愉快で不格好な回避策として、サインアップを検討している人向けに、ログインダイアログのテキスト自体をカスタマイズするためのガイドを追加しました。

もし私が決断してフォーラムをサブドメインに移行する場合、初心者としてどれだけの苦労が予想されるでしょうか?

  1. メインドメイン上にランディングページを設定し、かつそれを自分の Digital Ocean ドロップレット内でホストすること(別のサービスの費用を抑えるため)。
  2. Mailgun を通じた送受信メールおよびすべての機能が中断なく継続すること。

背景にある課題として、ランディングページの管理とコンテンツ更新を管理ダッシュボード内から行いたいと考えており、自動バックアップにも含めたいです。同じドメイン、ましてや同じソフトウェアを使用しない場合、これはかなり難しい作業のように思えます。

Discourse のコア機能に、他のサイト管理を望まない、あるいは必要としない人向けに、少なくとも簡易的なランディングページ機能を提供してほしいと切に願っています。

これはログインしているユーザーと匿名(非ログイン)ユーザーの両方に当てはまりますか?もしそうなら、それはドメインやサブドメインの設定変更では解決できない根本的な問題を示唆しています。

私たちの場合、Discourse は私たちの活動の絶対的な中心であるため、ルートドメインに配置することを確実に行いたいです。そのため、私も /admin/customize/site_texts/login_required.welcome_message およびそのページの他の要素を最適化する方法を検討しています。

良いニュースは、そのテキストには通常の Markdown などがすべて使用できることです。これにより、柔軟性が大幅に向上します。私はこれを Staff トピックで書いてから、カスタマイズ部分にコピーすることで実現しています。@codinghorror - 私たちのような状況の人々にとって、これを FAQ などのページと同じように動作させることは非常に役立つでしょう。

また、Custom Header Links のテーマコンポーネント(追加の CSS とともに)を使用して、プライバシーポリシーや利用規約へのリンク(これらは匿名ユーザーにも表示されるべきです)を提供することもできます。もちろん、私はこれで満足しておらず、匿名ユーザーにも FAQ や About ページを表示させたい(ただしフォーラムは非公開のまま)と考えているため、サポートを依頼しました。

これはログイン済みユーザーについて事実です。ログインしていないユーザーは、ログインダイアログ以外は何も表示されないはずです(何か見落としているでしょうか?)

ログインしているユーザーがそれらのページにアクセスできないのは非常に奇妙ですね。それらのトピックが#adminカテゴリに残っていますか?

あー、それがヒントかもしれませんね。私のサイトには「Admin」カテゴリがありません。

以前、空っぽに見えるカテゴリや、他のカテゴリと十分に区別できないカテゴリを整理しました。しかし、どうやら完全に空ではなかったようです。

これらのトピックの内容をこのサイトからコピーして、自分のサイトの残っているカテゴリのいずれかに再作成できると仮定した場合、それぞれのメニュー項目に再リンクするにはどうすればよいでしょうか?それとも、単に「Admin」カテゴリを再作成するべきでしょうか?

すみません、Staff のことを言いたかったのだと思います。当インスタンスでもいじっていましたが、トピックは保存されています。それらのトピックは「FAQ/ガイドライン」(トピック ID 5)、「利用規約」(トピック ID 4)、および「あなたのフォーラム名 プライバシーポリシー」(トピック ID 6)と呼ばれています。

これらには何か特別な設定があると思われます。カテゴリ設定に関わらず、各トピックの最初の投稿を編集できるのは管理者のみです。これらを再現するのは少し難しいかもしれません。頑張ってください!

#Staff カテゴリは削除されていませんでしたが、トピックが何らかの理由で消えているようです。

これらのトピック、特に Terms of Service と Privacy Policy のコンテンツについては、Discourse Meta サイトで見つけたものをそのままコピーしてもうまくいかないようです。両方とも法域や文脈に大きく依存しており、当フォーラムには適用できない内容だからです。もっと一般的な(ニュージーランド関連のものでも構いません)情報源はありますか?

また、単に ‘Admin’ カテゴリを追加してその中に ‘FAQ’ トピックを作成しただけでは機能しないことを確認しました。FAQ リンクをクリックしても空白画面が表示され、マウスポインタが回転し続けるだけです。

はい、さらに追記します。元の FAQ で使用されている URL を見ると、FAQ トピックが「faq」という名前のサブフォルダに直接存在していることがわかります。例えば:

https://meta.discourse.org/faq#civilized

一方、新しい FAQ トピックを作成してコンテンツを貼り付けると、以下のような URL になります。

https://nzarchitecture.net.nz/t/faq/15074

正しいサブフォルダを作成するか、トピックをそこに配置するにはどうすればよいでしょうか?FileZilla を介して Digital Ocean の Droplet に接続しても、Discourse ウェブサイトのコンテンツに直接対応する従来のフォルダ構造は見当たりません。おそらく、これらの URL やパスを生成する際に、Ruby on Rails の何か高度な仕組みが働いているのでしょう。

現時点での回避策として、欠落しているトピックを再作成した際に生成される URL を使用し、ダッシュボードの「設定/法的」にある関連する「代替外部ソース」フィールドに貼り付ける方法を見つけました。

可能であれば、きちんと整理整頓して対応するのが望ましいですが、元のセットアップが破損または欠落していることによる他の影響がどのようなものになるかはわかりません。

それらは組み込みトピックに対して組み込み(システム定義)で提供されています。削除前の状態に戻すには、おそらく PostgreSQL をいじる必要があるでしょう。

スティーブン、ありがとうございます。残念ながら、PostgreSQL を操作する手がかりが私にはありません。

組み込み機能であり、ユーザーが直接編集またはアクセスできるカテゴリに含まれていない場合、私がそれらを削除できたこと自体が可能だったのでしょうか?

また、それらのトピックが私にとって存在していたときでさえ、会社名、準拠法、紛争の都市についてセットアップ中に提供された「設定/必須項目」の情報を無視しているように見えました。つまり、すでに何かが破綻していました。

さらに、ユーザーが登録する前に利用規約を確認する方法がまったくないのであれば、すべては法的に無効だと言えます。これは、パスワードで保護されたすべての Discourse フォーラムにとって、ある意味で根本的な問題かもしれません。

こちらが私たちのものです。これは、少しだけ私たちのもの/ニュージーランド固有のものに調整した汎用的なものです:

生テキストが必要であれば、お送りできます。

ナサン、ありがとう。
ログインしていなくてもリンクできるのは興味深くて励みになりますね。

サインアップ/ログインダイアログにFAQや利用規約(TOS)などのリンクを確実に機能させたいのですが、今のところ、サインアップしていないユーザーに対してはすべて「権限がありません」という応答が返ってきてしまいます。

別の回避策でそれを実現できます:
情報投稿が含まれるカテゴリ(これは全員に可視化)を除き、すべてのカテゴリを trust_level_0(またはそれ以上制限されたレベル)のみに可視化し、その上でフォーラムを公開設定にします。もちろん、これでユーザーはログインページに到達しなくなりますが、この目標を達成するためのかなり過激な方法です。

あるいは、根本的な問題を解決し、私が上記でリンクした他の部分に対する解決策が来るまで私と一緒に待ちましょう(https://meta.discourse.org/t/making-the-about-and-faq-visible-to-anon/150043)

ナサン、ありがとうございます。一時的にその案を検討しましたが、「セキュリティ関連」のトピックがすべて表示されてしまう点に満足できませんでした。

PostgreSQL またはその他の方法で、組み込みの法的トピックと ID を復元する方法、あるいは各組み込みの法的トピックの正しい/元の URL に空白で編集可能な投稿を配置する方法について、ご助言をお願いできますでしょうか?

単にスタッフカテゴリに同じ名前の新しいバージョンを作成するだけでは機能しません。生成される URL が異なり、新規ユーザーがサインアップ中にアクセスできません(サインアップダイアログ内のリンクをクリックすると、ログインダイアログに戻されてしまいます)。

わかりました、これについては誰も助けられないようです。フォラムを最初から作り直し、保存したデータベースバックアップを復元すれば解決するでしょうか?それとも、バックアップを復元すると削除された内容が再び反映されてしまうのでしょうか?

申し訳ありませんが、おそらくそうなると思います。

そのデータベースのどこかに、投稿を再び表示させるために変更すべき小さなデータが存在します。実際には以下の通りです:

‘topics’ テーブルでは、ID 4、5、6 の deleted_at にタイムスタンプが設定されています。これらを削除(空白または何もない状態に置き換える)できれば、再び正常に動作するようになります。

Ruby/Rails からこの操作が可能なのは承知していますが、残念ながら私にはそのスキルがありません。しかし、そのスキルを持つ方なら 5 分ほどの作業で済むはずです。インスタンスのセットアップを手伝ってくれた方に相談してみると良いでしょう。

ナサン、ありがとうございます。
残念ながら、私は公式チュートリアルに従って自分でセットアップしましたが、その内容をあまり理解していませんでした。
以前は開発者に一部のデータを移行してもらったことがあり、1 週間前に彼らに連絡しましたが、まだ返信はありません。

そこで質問ですが、Digital Ocean の PostgreSQL テーブルに接続して表示・編集できるオープンソースのデスクトップアプリケーションはありますか?あるいは、ダウンロードしたバックアップを読み込んで編集し、それを復元できるようなものでも構いません。

** 追記 ** 類似の質問への返信を再確認したところ、GUI データベースアプリケーションを使うよりも、何かを行う場合は Ruby を使用するのが一般的という結論のようです。

ともあれ、バックアップ取得後に PuTTY で発行するべきコマンドは何でしょうか?具体的には、topics テーブルの deleted_at 列から ID 4、5、6 のタイムスタンプを削除するためのコマンドです。