ホームページテンプレートの置き換え/上書き方法

ログインユーザーと未ログインユーザーで異なるカスタムホームページを設定したいと考えています。JavaScriptで実装できることは承知していますが、Discourseのコンポーネントやプラグインで実現できるかどうかも知りたいです。

User-specific Discourse home page というコンポーネントを見つけましたが、これは新しいルートを作成してテンプレートを追加するもので、このアプローチは避けたいと考えています。

他に代替案や推奨されるベストプラクティスがあれば、ぜひご教示ください。

「いいね!」 1

JavaScriptで書かれたディスコースコンポーネントです :wink:

開発者向けのカスタムホームページサポートがあり、それらのユーザータイプを区別できます。

「いいね!」 3

ご返信ありがとうございます。GitHubリポジトリで言及されているアプローチを試しました。テーマの about.json ファイルに \"custom-homepage\": true を追加しましたが、機能していないようです。これが正しい方法であることを確認していただけますでしょうか?

#devでトピックを開くことをお勧めします。

もし苦労しているなら、#marketplaceで経験豊富なDiscourse開発者を雇うことを検討してください。

「いいね!」 1

正しい方法ですが、すべての手順に従いましたか?

  "modifiers": {
    "custom_homepage": "true"
  }

を追加し、テーマを有効にした後、ホームページは次のようになりますか?

はい、スレッドに記載されている手順に従いました。具体的には、まずモディファイアに"custom-homepage": "true"を追加し、次にjavascripts/discourse/connectors/custom-homepage/home.gjsにコンポーネントを作成しました。

デフォルトのホームページが表示されますか、それとも空白のホームページが表示されますか?コンソールエラーはありますか?

はい、デフォルトのホームページが表示され、コンソールにエラーはありません。

この設定を変更する必要があるでしょう。

image

「設定」で

「いいね!」 2

これでわかりました。デフォルトのホームページをデフォルトに設定する必要がありました。そうすれば機能しました。

「いいね!」 1

ご返信ありがとうございます

「いいね!」 1

ご返信ありがとうございます。うまくいきました。デフォルトのホームページ設定をデフォルトに設定するだけでよかったです。

「いいね!」 2

このトピックは、最後の返信から30分後に自動的にクローズされました。新しい返信は許可されていません。