Bannière polyvalente

:discourse2: Résumé Versatile Banner ajoute une bannière personnalisable à votre site.
:eyeglasses: Aperçu Aperçu sur le Créateur de Thèmes Discourse
:hammer_and_wrench: Lien du dépôt https://github.com/discourse/discourse-versatile-banner
:open_book: Nouveau dans les thèmes Discourse ? Guide pour débutants sur l’utilisation des thèmes Discourse

Installer ce composant de thème

Fonctionnalités

Ce composant de thème est une évolution des tentatives précédentes de bannières. L’objectif est de fournir plus de facilité et de flexibilité grâce à l’utilisation des paramètres du thème.

Ci-dessous, un aperçu des fonctionnalités :

  • Limiter l’affichage aux utilisateurs connectés ou aux utilisateurs anonymes
  • Limiter l’affichage exclusivement aux appareils mobiles ou aux ordinateurs de bureau
  • Limiter l’affichage à des pages spécifiques
  • Options de fermeture, d’expansion et de visibilité permanente
  • Option de largeur complète du navigateur
  • Gestion des couleurs
  • Personnalisation de l’en-tête et des colonnes à l’aide de HTML (voir ci-dessous pour plus de détails)
  • Option d’état persistant (voir ci-dessous pour plus de détails)

Personnalisation du contenu de votre bannière

Le contenu de la bannière est divisé en un en-tête principal et des colonnes. Vous pouvez avoir jusqu’à 5 colonnes sur votre bannière, cependant, le nombre recommandé est de 3 ou moins en raison des limitations de largeur. Des modèles HTML sont fournis et peuvent être personnalisés pour répondre à vos besoins individuels. Vous pouvez également contrôler la largeur de chaque colonne et ajouter n’importe quelle image ou icône Font Awesome que vous souhaitez en haut de chaque colonne.

Utilisation de l’option d’état persistant

L’option d’état persistant reposera sur jusqu’à deux cookies. Ces cookies contiendront un nom pour la bannière et une valeur vrai/faux liée à l’état de la bannière. Si vous avez des préoccupations concernant l’utilisation de cookies sur votre site, il est préférable d’éviter d’utiliser ce paramètre. Choisir une option de temps relatif pour le paramètre cookie_lifespan assurera que la bannière reste fermée/déployée/réduite pendant cette durée après que l’utilisateur a appuyé sur le bouton approprié. Sans ce paramètre, la bannière se réinitialise à chaque chargement complet de la page. Si vous apportez une modification à la bannière et souhaitez vous assurer que tous les utilisateurs voient ces modifications, même ceux qui avaient précédemment fermé la bannière, assurez-vous de modifier le “nom du cookie”. Cela réinitialisera essentiellement tout état persistant, puis permettra à l’utilisateur de fermer la bannière une nouvelle fois.

Paramètres

Nom Description
show for members Afficher la bannière pour les utilisateurs connectés au forum
show for anon Afficher la bannière pour les utilisateurs anonymes
display on mobile Afficher la bannière sur les appareils mobiles
display on desktop Afficher la bannière sur les ordinateurs de bureau
display on homepage Afficher la bannière sur la page d’accueil
url must contain Saisissez les chemins qui doivent afficher la bannière. Ajoutez * à la fin du chemin comme caractère générique
dismissible Permettre aux utilisateurs de fermer la bannière
collapsible Permettre aux utilisateurs de développer et de réduire la bannière
default collapsed state État réduit par défaut lorsque le paramètre réductible est activé
cookie lifespan La durée de vie du cookie utilisé pour se souvenir si la bannière a été fermée, développée ou réduite. Si défini sur “none”, AUCUN cookie ne sera utilisé avec ce composant, et tous les cookies précédemment créés liés à la bannière seront supprimés la prochaine fois qu’un utilisateur effectuera un chargement complet de la page. Les valeurs sont mesurées comme une unité unique, donc définir “year” sera une année, “week” sera une semaine, etc.
cookie name Lorsque des modifications importantes sont apportées à la bannière, vous devez modifier le nom du cookie pour vous assurer que tous vos utilisateurs voient les modifications.
full width banner Afficher la bannière à la largeur complète du navigateur
swap default positioning S’il y a un autre composant lié à la bannière actif, utilisez ceci pour échanger sa position avec Versatile Banner
plugin outlet below-site-header le place au-dessus de la barre latérale, above-main-container le place au-dessus du contenu à côté de la barre latérale
banner background image L’URL source de votre image d’arrière-plan. Astuce : Vous pouvez télécharger une image sur votre thème principal et utiliser l’URL de celle-ci, mais assurez-vous de ne pas utiliser la section “Uploads” de ce composant. Tous les ajouts à ce composant seront supprimés à chaque mise à jour.
banner background image dark L’URL source de votre image d’arrière-plan lorsque le mode sombre du système est détecté.
background color Utilisé à la place d’une image d’arrière-plan
background color dark Utilisé à la place d’une image d’arrière-plan lorsque le mode sombre du système est détecté.
primary text color La couleur du texte principal de la bannière
primary text color dark La couleur du texte principal de la bannière lorsque le mode sombre du système est détecté
secondary text color La couleur du texte de l’icône et des en-têtes de texte, et la couleur d’arrière-plan du bouton.
secondary text color dark La couleur du texte de l’icône et des en-têtes de texte, et la couleur d’arrière-plan du bouton lorsque le mode sombre du système est détecté.
link text color La couleur du texte des liens dans la bannière
link text color dark La couleur du texte des liens dans la bannière lorsque le mode sombre du système est détecté.
Traduction Défaut
close.title Fermer la bannière
close.label Fermer
toggle.title Développer/Réduire la bannière
toggle.collapse_label Réduire
toggle.expand_label Développer

:discourse2: Hébergé par nous ? Les composants de thème sont disponibles pour une utilisation sur nos plans Pro, Business et Enterprise.

101 « J'aime »
Homepage Banner
Homepage specific design and content
Showing two banners: one to anonymous users, and one for logged-in members
Discourse Theme Creation
Activated child Component and broke Discourse!
How to add a simple Banner
Landing page customization
Adding a new banner just above the logo
Banner on Discourse
Ideas for highlighting content on our forum
Impact of component positioning with 2.5.0.beta6
Using an Image for a Global Banner Topic - Dimensions?
Showing a Warning to Non-Registered Users
Homepage Feature
Customise home login page
Enhancing My engineering Community Landing Page - Technology Support Category
How to add top welcome message to the board
How is the Banner at meta.discourse.org created?
Is it possible to change the order of topics?
Can the new About page be more visible?
Need help to emulate old forum
Creating a banner that only 1 group can see, while the other groups don't
Sticky global notice
Banner text customization for Subscriptions plugin
How to I stop topics automatically un-pinning when a user reaches the bottom?
How to insert Versatile Banner before the content of the post.?
Need guidance for adding description bar
Customizing your site with existing theme components
How to Set a Closable Banner at the Top of site?
Order of two items in the same plugin outlet
How to add this type of banner?
Customize Your Site Branding
Can the new About page be more visible?
Asking for advice on "How to create a Banner on the main page"/
No HTML in global notice
Welcome Link Banner theme-component with photos
How to apply CSS code only in the discourse home page?
How to add a header image and customize it
Make the Welcome Banner less intrusive
Your own banner with a link
I want add photo for download my app
How to add title and buttons naturally above forum topics?
Where shall I put this code for a top banner?
Is it possible to insert a box of text between the header and topic list?
How do I create a welcome banner like the one on this site?
Customizing the groups page
What are good plugins or theme components for a forum emphasizing pictures?
Creating a banner to display at the top of your site
Horizon Theme
Missing margin in the .banner- box for Versatile Banner TC
What Are Some Good Welcome Banner Designs?
App interviewer
How minimal is your forum?
How to make the automatic dark theme the same as the selected dark theme?
Hover preview and quote of the day
Creating a "Featured Categories" homepage banner
Making my discourse site look a certain way
Help with alignment in the "versatile banner" plugin
Make Banner Undismissable
Can I add a banner only on my homepage?
Welcome message at the top
Globally pinned topic only appears in one category
Pin a post even in the categories home page
How do i turn of unpin/pin option for my forum users?
[PAID] Assistance to Set-up My Forum
Custom HTML on Groups page
Banner diference mobile/web
Help me code menu top same image
Publish a notification at top of the page
How to create a welcome banner/section?
Landing page customization
Message to display to only users without accounts/logged in?
Turned my Discourse into a successful ecommerce platform!
Category Banners
Adding a new banner just above the logo

Salut tout le monde ! Je veux que tout le texte soit aligné à gauche, mais le thème CSS ne fonctionne pas pour moi. Quelqu’un peut-il m’expliquer exactement comment faire ?

3 « J'aime »

Est-ce dans la direction que vous recherchez ?

Si c’est le cas, voici un peu de CSS rapide et efficace qui devrait vous aider à démarrer :

.banner-box {
  h1,
  h2,
  h3,
  .row .single-box {
    text-align: left;
    & .banner-list {
      display: block;
      ul {
        margin: 0 0 9px 25px;
      }
    }
  }

  .section-header {
    .x-title {
      padding: 25px 15px;
    }
    .description p {
      text-align: left;
    }
  }
}

Vous devrez créer un nouveau composant nommé « Personnalisations polyvalentes pour les bannières » et ajouter le CSS ci-dessus dans la section « Commun ». Assurez-vous d’ajouter ce nouveau composant à tous les thèmes actifs qui utilisent la bannière polyvalente afin de prendre en compte la personnalisation.

5 « J'aime »

Cela a fonctionné pour moi. Merci beaucoup.

3 « J'aime »

Bonjour,

Est-il possible de rendre l’image d’arrière-plan cliquable ?

Merci pour votre réponse.

Pourriez-vous nous donner un exemple ?
Pourquoi feriez-vous cela ?
Je veux dire… toutes les images d’arrière-plan deviendraient des liens ?
Si un utilisateur clique n’importe où sur la bannière, il sera redirigé vers ce lien.
Je n’arrive pas à imaginer l’utilité.

1 « J'aime »

Comment puis-je ajuster la hauteur de la bannière ?

1 « J'aime »

Bonjour @tshenry, j’utilise le composant de bannière Versatile, mais il disparaît lorsque je décoche l’option « afficher sur ordinateur ». En effet, je souhaiterais afficher la bannière uniquement sur mobile.

Cependant, lorsque je décoche « afficher sur ordinateur », la bannière Versatile disparaît à la fois sur ordinateur et sur mobile.
Voici le site si vous souhaitez vérifier : https://hec.fm

Ai-je manqué quelque chose ?

1 « J'aime »

Est-il possible d’afficher les liens horizontalement sur mobile également ? J’ai été un peu surpris de les voir s’afficher les uns sous les autres au lieu d’être alignés horizontalement.

1 « J'aime »

Merci d’avoir signalé ce problème ! Désolé pour le délai de réponse. Je parviens à reproduire le comportement que vous décrivez. Je suis presque certain de savoir ce qui se passe. Je m’en occuperai plus tard cette semaine et je reviendrai vers vous.

La hauteur de la bannière dépend principalement de son contenu, mais vous pouvez ajuster n’importe quel élément selon vos besoins avec votre propre CSS. Je ne sais pas trop dans quelle mesure vous pourrez aligner trois colonnes horizontalement sur mobile, mais vous pouvez tout à fait essayer avec du CSS personnalisé ! Consultez Making custom CSS changes on your site pour quelques conseils.

4 « J'aime »

Je pense rencontrer un bug sur mon site concernant la durée de vie des cookies pour conserver l’état d’expansion/réduction. Ce que je souhaite, c’est que mon site se souvienne quand les utilisateurs réduisent ou étendent la bannière, et qu’il conserve cet état quelle que soit la situation. Cela fonctionne comme prévu lorsque je reste sur la page d’accueil ou que je clique sur des sujets. Cependant, dès que je vais dans le panneau d’administration, les paramètres utilisateur, la FAQ, À propos, les CGU, la confidentialité ou la documentation, puis que je retourne à la page d’accueil, les choses deviennent étranges : parfois la bannière est dans l’état opposé à celui défini, et parfois même l’icône de flèche indiquant la réduction ou l’expansion est orientée incorrectement.

Ici, l’icône de flèche pointe vers le haut :

Mais après avoir cliqué sur la documentation, puis être retourné à la page d’accueil, l’icône de flèche est orientée dans le sens opposé.

Ce comportement semble vraiment étrange…

2 « J'aime »

Je viens de remarquer que la bannière polyvalente n’apparaît plus sur la page de connexion de notre forum (qui est privé), contrairement à avant.

L’option « Afficher la bannière pour les utilisateurs anonymes » est cochée dans les paramètres du composant.

En examinant le code HTML, je vois une balise div avec la classe ‘banner-box’ à l’intérieur d’une série imbriquée de divs portant la classe ‘emberX’, mais la div ‘banner-box’ est vide, contrairement au HTML des utilisateurs connectés.

Avez-vous une idée de ce qui pourrait causer ce problème ?

1 « J'aime »

Je viens de pousser une petite mise à jour du composant.

Cela devrait être corrigé avec la mise à jour ci-dessus. Je suis vraiment désolé que cela ait pris autant de temps pour appliquer ce correctif. Merci encore pour votre signalement !

Vous devrez ajouter /login au paramètre du thème « L’URL doit contenir ». Consultez ce message pour plus de détails.

Cela a déjà été signalé une ou deux fois par le passé. Malheureusement, je n’ai jamais réussi à le reproduire. Je vais réessayer dès que possible en suivant exactement vos étapes et voir si j’ai plus de chance.

3 « J'aime »

J’utilise le bannière versatile et j’essaie de transformer le bannière en un lien géant qui redirige vers un autre site web. Comment puis-je faire ?

J’ai essayé de le modifier via un script : api.changeWidgetSetting('banner-content-widget', 'href', '<site_adresse>'), mais le bannière versatile arrête de fonctionner.

1 « J'aime »

Merci, c’est formidable. Cela fonctionne parfaitement maintenant ! :folded_hands:t2:

2 « J'aime »

Vous pourriez peut-être faire quelque chose comme ceci :

<script type="text/discourse-plugin" version="0.10.0">
  // Ajouter le lien au titre
  api.reopenWidget("banner-box-widget", {
    html(attrs) {
      let bannerBox = this._super();
      bannerBox[0].children[1].tagName = "A";
      bannerBox[0].children[1].properties.href = "https://meta.discourse.org";
      return bannerBox;
    }
  });
  
  // Ajouter le lien au reste du contenu
  api.reopenWidget("banner-content-widget", {
    html(attrs) {
      let bannerContent = this._super();
      bannerContent.tagName = "A";
      bannerContent.properties.href = "https://meta.discourse.org";
      return bannerContent;
    }
  });
</script>

Et ajouter une règle CSS pour ajuster la couleur du lien :

.banner-box a {
    color: var(--primary);
}

À moins que vous n’ayez besoin d’une fonctionnalité spécifique offerte par la bannière Versatile, je me demande si il ne serait pas préférable de créer vous-même une simple bannière HTML dans un nouveau composant. Exemple approximatif :

Ajoutez ce qui suit dans la section commune « Après l’en-tête » :

<a href="https://meta.discourse.org">
  <div class="custom-banner">
    <h2>Ceci est une bannière personnalisée !</h2>
  </div>
</a>

et ce qui suit dans la section commune « CSS » :

.custom-banner {
   display: flex;
   justify-content: center;
   align-items: center;
   width: $large-width; // 1110px
   height: 200px;
   margin-bottom: 15px;
   background: grey;
   color: white;
 }

Cela vous donnerait une bannière simple entièrement cliquable :

3 « J'aime »

J’installe ce composant depuis Git, mais il semble que je n’aie pas récupéré le dernier code. Le commit FIX: Work with new sticky header and move away from deprecated $.cookie · discourse/discourse-versatile-banner@0939120 · GitHub n’a pas été mis à jour sur mon site https://ygobbs.com/.

1 « J'aime »

Cela est dû au fait que vous exécutez la version 2.6.0.beta2 de Discourse. Le commit que vous avez lié nécessite la version 2.6.0.beta3 ou supérieure. Vous remarquerez que le commit lié a ajouté un fichier discourse-compatibility pour vous assurer de ne pas mettre à jour vers un commit incompatible avec votre version de Discourse.

5 « J'aime »

wow, c’est incroyable que Discourse trouve une version plus ancienne pour moi au lieu de m’empêcher d’installer le composant. Merci !

3 « J'aime »

Bonjour @tshenry,
Je souhaite installer le composant plusieurs fois afin d’utiliser chaque instance pour afficher des bannières différentes selon les catégories. J’ai donc désactivé l’option « Afficher sur la page d’accueil » et utilisé la condition « L’URL doit contenir », mais cela empêche le composant principal, que j’utilise pour l’afficher uniquement sur la page d’accueil, de fonctionner. Pourriez-vous me proposer une autre solution ou s’agit-il d’un bug ? Merci ! (:

1 « J'aime »