皆さん、こんにちは。Discourse の開発を始めたばかりで、テーマコンポーネントに取り組んでいます。
リンク: GitHub - NateDhaliwal/discourse-persistent-banner: A theme component for Discourse that cannot be closed by the user.
テーマクリエーターに配置しても、settings.yml があるにもかかわらず、設定が表示されません。何かアイデアはありますか?
皆さん、こんにちは。Discourse の開発を始めたばかりで、テーマコンポーネントに取り組んでいます。
リンク: GitHub - NateDhaliwal/discourse-persistent-banner: A theme component for Discourse that cannot be closed by the user.
テーマクリエーターに配置しても、settings.yml があるにもかかわらず、設定が表示されません。何かアイデアはありますか?
テーマクリエーターでエラーメッセージが表示されていますか?
最初と最後の引用符は同じものを使用する必要があると思います。
これも問題かもしれません。default: "" を試してみてください。
おそらく、選択肢に「block」を追加したいのではないでしょうか。そうしないと、再度選択するには元に戻すボタンを使用する必要があります。
おっと、インポートする代わりに「新規作成」をクリックしていたことに気づきました…
しかし、URLを使用しようとすると、about.jsonが無効であるか存在しないと表示され、テーマかどうか尋ねられます。
About.json:
何か問題がありますか?
ライセンスURLの後にカンマがありません。
![]()
@merefield バージョンは""に入りますか?
それもそうでしょう。例を見てください。
ありがとうございます!最後の一つです。変数を表示させることができません。
https://github.com/NateDhaliwal/discourse-persistent-banner/blob/main/common/header.html
適切に初期化しなかったからでしょうか?ガイドに従ってみました…
html-safeヘルパーを使用してください。それなら、以下を使用する必要がありますか
import Component from "@glimmer/component";
export default class PracticeComponent extends Component {
get bannerLinks() {
return JSON.parse(settings.banner_links);
}
}
それから?
何十億もの例を見てみましょう ![]()
javascript で処理する必要がある場合のみ gjs ファイルを使用し、そうでない場合は hbs テンプレート ファイルで十分な場合があります。実験してください。
正しい方向に向かっているか分かりません。
javascripts/persistent-banner.hbs を以下のように作成しました。
https://github.com/NateDhaliwal/discourse-persistent-banner/blob/main/javascripts/persistent-banner.hbs
しかし、何も表示されません。色々な場所に置いてみましたが、うまくいきませんでした。
例を見ようとしましたが、あまり役に立たないようです。
何かアドバイスはありますか?
バナーをどのプラグインコンセントに入れたいですか?
Using Plugin Outlet Connectors from a Theme or Plugin を参照してください。
例として https://meta.discourse.org/t/add-a-featured-topic-list-to-your-discourse-homepage/132949?u=moin を使用できます。
プラグインコンセントの名前と場所を見つけるには、(deprecated) Plugin outlet locations theme component を使用できます。「above-main-container」は、たとえばトピックリストの上部ですが、サイドバーの上部ではありません。
同様のものを追加する Theme component のコードを確認することも、学習の良い方法です。
hbs ファイルにスクリプト タグを記述する必要はなく、記述すべきではありません。スクリプト タグはテンプレートの内容に限定する必要があります。
当てずっぽうでやめ、ガイドを読んでください。
hbsファイルを使わずに、代わりにhandlebarsを使用した<script>タグで動作させることができました。これで動作します。
今はこのように使用していますが、代わりにhbsファイルを使用するよう試行を続けます。
ファイルを適切に分割する方法を確認できるように、簡単なプルリクエストを作成しました。自由にマージするか、ブランチを確認してください。
ありがとうございます!これで動作するようになりました!
心配いりません、ネイト。実験、読書、他の例を見ることを続けてください。あっという間にこの開発作業は私よりもずっと上手になりますよ
![]()
励ましありがとうございます!
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.