設定の「icon」とは何を意味しますか?
それは SVG サイトにある特定のアイコンの正確な名前ですか?その正確な名前はどのようにして入手できますか?
設定の「icon」とは何を意味しますか?
それは SVG サイトにある特定のアイコンの正確な名前ですか?その正確な名前はどのようにして入手できますか?
それは確かに素晴らしい改善になるかもしれませんね!
コードを確認し、以下の 2 つの問題を修正しようとしていますが、2 つ目の問題でつまずいています。
この問題は、header.html の 112 行目を
if(iconItem && !attrs.category.parent_category_id) {
から
if (iconItem) {
に変更し、common.scss に以下のコードを追加することで修正できました。
.subcategory .category-icon-widget {
display: none;
}
カテゴリー一覧ビュー:
カテゴリービュー(このカテゴリー内のトピックの上にサブカテゴリーリストを表示):
関連するコードは以下のものだと思われます:
let classNames = "badge-category clear-badge";
if (restricted) {
classNames += " restricted";
}
...
html +=
`<span ${style} ` +
'data-drop-close="true" class="' +
classNames +
'"' +
(description ? 'title="' + escapeExpression(description) + '" ' : "") +
">";
これは、サブカテゴリーのロックアイコンの表示を制御する badge-category clear-badge クラスを持つ <span> に restricted クラスを追加していますが、カテゴリーのロックアイコンの表示を制御する category-text-title クラスを持つ <div> にもこれを適用する方法がわかりません。
近い将来に対応する見込みはありますか?何かの理由で、カテゴリボックス表示でもカラーブロブやロックアイコンが表示されないため、このコンポーネントの制御外にある可能性もあります。
バグ @pmusaraj
サブカテゴリのスラッグ(およびタイトル)は、親カテゴリ内でのみ一意である必要があります。
しかし、スラッグはこのコンポーネント内でアイコンを検索するためのキーとして使用されます。
そのため、異なる親の下にある2つのサブカテゴリが同じスラッグを持つ場合、そのアイコンが両方に適用されてしまいます。
正直に言えば、これは実際にはDiscourseの問題だと思います。スラッグはDiscourseインスタンス全体で一意であるべきですが、そうではありません。
この問題をコンポーネント内で修正することは可能でしょうか?
スラッグは AFAIK 常にグローバルスコープを持つわけではないのに、なぜグローバルに一意である必要があるのかわかりません。説明していただけませんか?
P.S. 一意でない理由について尋ねるあなたの新しいトピックを見つけました。
例えば、カテゴリアイコンコンポーネントは、アイコンをどのカテゴリに割り当てるかを特定するためにスラッグを使用します。
管理者やユーザーは、サブカテゴリを一意に識別する方法はどうなるのでしょうか?親カテゴリとサブカテゴリを結合したパス(例:parentcategory-subcategory)を使用する必要があるのでしょうか?(あるいは、その機能拡張がリリースされたら、親・子・孫を結合したパスを使用するのでしょうか?)これは少し手間がかかるように思えます。
同じスラッグを持つサブカテゴリを異なる親の下で重複させないことは、おそらく可能ですが、コンポーネントの設定で親カテゴリのスラッグを渡す何らかの方法が必要になります。個人的には、あまりエレガントな方法ではないと思います。
2 つの同じスラッグを持つカテゴリのいずれかのスラッグを変更することは試しましたか?それができない理由がありますか(カテゴリ名ではなく、スラッグのみを変更する必要があります)?
はい、親カテゴリが異なる場合、サブカテゴリのスラッグは一意である必要がないため、それが適切な方法のようです。
ただし、これを機能として活用することも可能です。例えば、グループベースのカテゴリがあり、その多くに「ヘルプ」や「お知らせ」フォーラムがサブカテゴリとして存在する場合、ヘルプカテゴリ全体に共通のヘルプアイコンを、お知らせカテゴリ全体に共通のアイコンを設定できます。これには 2 つのエントリだけで実現でき、ヘルプタグを持つ新しいサブカテゴリが追加された場合でも、自動的にアイコンが適用されます。
当社の利用ケースでは、さらに一歩進めてスラッグの完全一致ではなく部分一致をオプションとして実装しました。例えば、「help,question-mark,#000080,false」というエントリがあれば、「sw-help」「help-forum」「helpdesk」などにマッチします。
エントリの末尾にある「false」は、完全一致を強制しないように指示する追加項目です。
また、色を「catcol」と指定するオプションもあり、その場合、アイコンは別途指定された色ではなく、カテゴリの色を引き継ぎます。
アップデートへの組み込みのための 2 つの提案です。
以前、このコンポーネントが部分一致を使用していた時期があり、「book」にはアイコンを表示したいが「booking」には表示したくないというユーザーにとって混乱を招くことがありました。しかし、この機能を設定ごとにオン/オフできるのであれば、非常に便利でしょう。(最後の項目を「false」ではなくpartial-match とすると、より理解しやすくなるかもしれません。)
これは素晴らしい追加機能ですね。
これらの機能のいずれかについて PR をレビューする準備ができています。ありがとうございます!
Allow slug partial-match option by rogercreagh · Pull Request #5 · discourse/discourse-category-icons · GitHub がマージされました。@rogerco さん、ありがとうございます!
カテゴリ色のオプションで、設定がバーではなく箇条書きやボックスを使用している場合に、小さな問題にぶつかりました。設定ではバーのオプションのみで作成したため、他のオプションではグレーにフォールバックしてしまいます。これは主に CSS で修正可能だと思いますが、まだ解決できていません。必ず解決します!
@pmusaraj 素晴らしいテーマをありがとうございます!![]()
COMMENTS アイコンを使いたいのですが、ソリッド版はあまり好きではありません。comments を使用するとソリッド版が表示されてしまいます。このソリッド版は通常「fas fa-comments」として提供されます。
もしレギュラー版を使いたい場合はどうすればよいでしょうか?こちらは通常「far fa-comments」として提供されます。
以下のバリエーションの中には、有料サブスクリプションが必要なものもあります。異なるバリエーションを選択する方法はありますか?それともソリッド版のみが利用可能でしょうか?
両方の設定で「far-comments」を使用してください。例:
有料バージョンは一般に公開されていないため、Discourse に含めることはできません。ライセンスが許可している場合、テーマにカスタム SVG スプライトとして追加できます。そのための完全な手順は、Font Awesome 5 と SVG アイコンの導入 に記載されており、「カスタムアイコンの追加」セクションを注意深くお読みください。
ご協力ありがとうございます!far-comments を両方の領域に追加したところ、完璧に機能しました!
もう一つ、私が質問した別の件(このトピック内であなたがコメントした他の回答に対する返信です)を、ぜひ少し見ていただけますか…
素晴らしいテーマコンポーネントですね!Font Awesome やアイコンスプライトアップロードを使用して画像をアップロードする際に問題が発生しています。question-circle しか表示されません。何が間違っているのでしょうか?CSS コードを追加する必要がありますか?
以下にスクリーンショットを掲載します。
そして
Font Awesome の名前は常に「見つからない」と表示され、作成を促されます。直接名やプレフィックス(例:bullhorn または fa-bullhorn)を試してみましたが、うまくいきません。
更新 Font Awesome は動作するようになりました。設定で SVG アイコンを追加するオプションを見つけましたが、question-circle のように色設定が反映されません。
カスタム SVG アイコンを使用したいのですが、初心者向けの手順が知りたいです。
プロフィールのサイトを見ると、カテゴリのアイコンが表示されているので、すでに解決済みかもしれませんね。もしまだであれば、上記のスクリーンショットから、icons-sprite 内の SVG ファイルが個別のアイコンではなく、SVG スプライトファイルであることを確認する必要があると思います。詳細については、Replace Discourse's default SVG icons with custom icons in a theme をご覧ください。