カラーパレットにオプションを追加する方法

他のパレットよりも多くの設定オプションを持つパレットがあることに気づきました。
たとえば、Dracula パレットは他のパレットよりもはるかに多くのオプションを持っています。

この投稿を見ましたが、関連があるかどうかはわかりません。

これはテーマに関連しているようですが、パレットにはコードを編集して色定義を追加するオプションがありません。

「いいね!」 1

はい、テーマで個々の色を直接上書きできます。これはカラーパレット管理エリアからはできません。

「いいね!」 2

共有ありがとうございます。

では、まだあまり慣れていない者にとっては、サーバーにSSH接続して(それが専門用語であれば)、そのJSONファイルを見つけて変更を加えれば、UIに反映されるということでしょうか?

もしそうであれば、デフォルトの変数を上書きしたり、新しい変数を追加したりすることもできますよね?

「いいね!」 1

もしその方法で行った場合、次のDiscourseのアップデートで上書きされてしまう可能性が高いと思います…ですので、通常は既存のパレットはそのままにしておくのが良いでしょう。

拡張されたすべての色のオーバーライドを含む新しいパレットを作成し、ユーザーがそのパレットを選択できるようにしたい場合は、最も簡単な方法はテーマを作成してアップロードすることです。

テーマ自体で行う必要があるのは、about.jsonを編集して色の定義を含めることだけです…ここに例があります:

テーマがサイトに追加されると、含まれるカラーパレットがadmin/customize/colorsに追加され、ユーザーが選択できるようになります。

色をカスタマイズする別の方法は、CSSで直接オーバーライドすることです。これには、特定のカラーパレットではなく、特定のテーマを使用する必要があります…しかし、テーマの共通ファイルで次のようなことができます:

:root {
  --primary-low: red;
  --secondary: #ff0000;
}

ブラウザのインスペクターを開き、一番上のHTML要素をクリックしてスクロールすると、オーバーライドできるすべての色を確認できます(現在、多くの変数があります)。

この方法の利点は、管理UIのテーマエディタを通じて行うことができることです。

「いいね!」 3

ここに消化すべきことはたくさんありますが、時間をかけて読み、分析し、テストします。

詳細な返信をありがとうございます。メモに保存しました。:raising_hands: