Bonjour ![]()
Ce sujet contient deux composants de thème.
Discourse Easy SVG Icon CSS
Ce composant de thème est fonctionnel en tant que modèle, veuillez le forker sur Github ou utiliser le code dans votre projet. Vous pouvez supprimer les codes svg des icônes du SCSS et ne conserver que ceux que vous utilisez réellement… J’ai importé le fichier
mixindans le fichiercommon.scssafin que vous puissiez ajouter votre code sous cette ligne ou séparément dans la section bureau ou mobile.
Le composant de thème ajoute la capacité de garder l’icône SVG maintenable et facilement modifiable dans votre CSS. Le composant contient toutes les icônes svg trouvées ici : discourse/vendor/assets/svg-icons/fontawesome at main · discourse/discourse · GitHub
Comment l’utiliser ?
Paramètres fixes :
$icon-set : marques, régulier, solide
$icon-name : nom de l’icône
$icon-color : couleur de l’icône (currentColor, hexadécimal ou variable de couleur)
$width et $height : la taille de l’icône ajoutée
Cela ressemble à ceci :
@include svg-icon($icon-set, $icon-name, $icon-color, $width, $height);
Utilisation de currentColor
Voici un exemple pour ajouter une icône de fusée solide avant l’élément de navigation Latest.
#navigation-bar {
li.nav-item {
&_latest {
a {
gap: 0.5em;
&:before {
content: "";
@include svg-icon(solid, rocket, currentColor, 1em, 1em);
}
}
}
}
}

Utilisation de la variable de couleur var(--gold)
Voici un exemple pour ajouter une icône d’étoile dorée régulière avant l’élément de navigation Top.
#navigation-bar {
li.nav-item {
&_top {
a {
gap: 0.5em;
&:before {
content: "";
@include svg-icon(regular, star, var(--gold), 1em, 1em);
}
}
}
}
}

Nous pouvons facilement changer l’ensemble d’icônes, la couleur ou même l’icône au survol, etc… Voyons voir !
Maintenant, nous changeons l’icône régulière en solide lorsque je survole le bouton.
#navigation-bar {
li.nav-item {
&_top {
a {
gap: 0.5em;
&:hover,
&:focus,
&.active {
&:before {
@include svg-icon(solid, star, currentColor, 1em, 1em);
}
}
&:before {
content: "";
@include svg-icon(regular, star, currentColor, 1em, 1em);
}
}
}
}
}

Discourse Easy Emoji CSS
Ce composant de thème est fonctionnel en tant que modèle, veuillez le forker sur Github ou utiliser le code dans votre projet. J’ai importé le fichier
mixindans le fichiercommon.scssafin que vous puissiez ajouter votre code sous cette ligne ou séparément dans la section bureau ou mobile.
Comment l’utiliser ?
L’utilisation est similaire à la version SVG.
Paramètres fixes :
$emoji-set : apple, google, twitter, win10, google_classic, facebook_messenger
$emoji-name : nom de l’emoji
$width et $height : la taille de l’emoji ajouté
@include emoji($emoji-set, $emoji-name, $width, $height);
Voici un exemple pour ajouter un emoji rocket facebook_messenger avant l’élément de navigation Latest et un emoji star twitter avant l’élément de navigation Top.
#navigation-bar {
li.nav-item {
&_latest {
a {
gap: 0.5em;
&:before {
content: "";
@include emoji(facebook_messenger, rocket, 1em, 1em);
}
}
}
&_top {
a {
gap: 0.5em;
&:before {
content: "";
@include emoji(twitter, star, 1em, 1em);
}
}
}
}
}




