📣 Barres d’annonceGratuit · 0 NahnahPar NAHNAH
Barre d'infos à onglets
Une barre avec de petits onglets (Livraison, Retours, Paiement…) : le visiteur clique et le message change sur place.
Aperçu en direct
Données de démonstration (produits, menus, textes d’exemple) : dans ta boutique, ce sont les tiennes.
Photos : Unsplash / Pexels (exemples de l’aperçu, jamais inclus dans le code).
Code à copier
Fichier complet sections/nahnah-annonces-onglets-infos.liquid (Liquid, CSS et JS inclus).
{%- comment -%} NAHNAH AI · Barre d'infos à onglets {%- endcomment -%}
{%- if section.blocks.size > 0 -%}
<div class="nn-annonces-onglets-infos" style="--nn-fond: {{ section.settings.couleur_fond }}; --nn-texte: {{ section.settings.couleur_texte }}; --nn-accent: {{ section.settings.couleur_accent }};">
<div class="nn-annonces-onglets-infos__onglets" role="tablist" aria-label="Informations">
{%- for block in section.blocks -%}
<button type="button" role="tab" id="nn-onglet-{{ block.id }}" aria-controls="nn-panneau-{{ block.id }}" aria-selected="{% if forloop.first %}true{% else %}false{% endif %}" tabindex="{% if forloop.first %}0{% else %}-1{% endif %}" class="nn-annonces-onglets-infos__onglet" {{ block.shopify_attributes }}>{{ block.settings.onglet | escape }}</button>
{%- endfor -%}
</div>
{%- for block in section.blocks -%}
<p role="tabpanel" id="nn-panneau-{{ block.id }}" aria-labelledby="nn-onglet-{{ block.id }}" class="nn-annonces-onglets-infos__panneau" {% unless forloop.first %}hidden{% endunless %}>
{{ block.settings.message | escape }}{%- if block.settings.lien != blank -%} <a href="{{ block.settings.lien }}">{{ block.settings.texte_lien | escape }}</a>{%- endif -%}
</p>
{%- endfor -%}
</div>
{%- endif -%}
{% schema %}
{"name":"Infos à onglets","settings":[
{"type":"color","id":"couleur_fond","label":"Fond","default":"#111827"},
{"type":"color","id":"couleur_texte","label":"Texte","default":"#F9FAFB"},
{"type":"color","id":"couleur_accent","label":"Onglet actif","default":"#34D399"}],
"blocks":[{"type":"info","name":"Onglet","limit":5,"settings":[
{"type":"text","id":"onglet","label":"Nom de l'onglet","default":"Livraison"},
{"type":"text","id":"message","label":"Message","default":"Expédition sous 48 h ouvrées"},
{"type":"text","id":"texte_lien","label":"Texte du lien","default":"Détails"},
{"type":"url","id":"lien","label":"Lien"}]}],
"presets":[{"name":"Barre d'infos à onglets","blocks":[
{"type":"info","settings":{"onglet":"Livraison","message":"Expédition sous 48 h ouvrées"}},
{"type":"info","settings":{"onglet":"Retours","message":"Retours acceptés sous 30 jours"}},
{"type":"info","settings":{"onglet":"Paiement","message":"Paiement sécurisé par carte"}}]}]}
{% endschema %}
{% stylesheet %}
/* Barre à onglets */
.nn-annonces-onglets-infos{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;background:var(--nn-fond);color:var(--nn-texte);padding:8px 16px;font-size:14px}
.nn-annonces-onglets-infos__onglets{display:flex;gap:4px;padding:3px;border-radius:999px;background:color-mix(in srgb,var(--nn-texte) 10%,transparent)}
.nn-annonces-onglets-infos__onglet{border:0;background:transparent;color:inherit;font:inherit;font-size:12px;padding:4px 12px;border-radius:999px;cursor:pointer;transition:background .25s,color .25s}
.nn-annonces-onglets-infos__onglet[aria-selected="true"]{background:var(--nn-accent);color:var(--nn-fond);font-weight:700}
.nn-annonces-onglets-infos__onglet:focus-visible{outline:2px solid var(--nn-accent);outline-offset:2px}
.nn-annonces-onglets-infos__panneau{margin:0;animation:nn-onglet-entree .35s ease}
.nn-annonces-onglets-infos__panneau a{color:inherit;font-weight:700}
@keyframes nn-onglet-entree{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion: reduce){.nn-annonces-onglets-infos__panneau{animation:none}.nn-annonces-onglets-infos__onglet{transition:none}}
{% endstylesheet %}
{% javascript %}
// Gère le changement d'onglet au clic et aux flèches du clavier
(function () {
document.querySelectorAll('.nn-annonces-onglets-infos').forEach(function (barre) {
var onglets = Array.prototype.slice.call(barre.querySelectorAll('[role="tab"]'));
function activer(index) {
onglets.forEach(function (onglet, i) {
var actif = i === index;
onglet.setAttribute('aria-selected', actif ? 'true' : 'false');
onglet.tabIndex = actif ? 0 : -1;
var panneau = document.getElementById(onglet.getAttribute('aria-controls'));
if (panneau) { panneau.hidden = !actif; }
});
}
onglets.forEach(function (onglet, i) {
onglet.addEventListener('click', function () { activer(i); });
onglet.addEventListener('keydown', function (e) {
// Flèches gauche/droite pour passer d'un onglet à l'autre
if (e.key === 'ArrowRight' || e.key === 'ArrowLeft') {
var suivant = (i + (e.key === 'ArrowRight' ? 1 : -1) + onglets.length) % onglets.length;
activer(suivant);
onglets[suivant].focus();
}
});
});
});
})();
{% endjavascript %}
Licence NAHNAH AI : utilisation libre dans tes boutiques (y compris commerciales), modification permise, revente de l’élément seul interdite.
Prompt à copier
À coller dans Claude ou ChatGPT avec le fichier téléchargé (ou le code copié) : l’assistant t’aide à l’installer et à l’adapter à ta marque.
Tu es un expert des thèmes Shopify Online Store 2.0. Aide-moi à installer puis à adapter à ma marque cet élément gratuit de la bibliothèque NAHNAH AI.
Élément : « Barre d'infos à onglets » (Barres d’annonce)
Description : Une barre avec de petits onglets (Livraison, Retours, Paiement…) : le visiteur clique et le message change sur place.
Page de l’élément (aperçu en direct) : https://ai.nahnah.shop/bibliotheque-shopify/annonces-onglets-infos
Fichier : nahnah-annonces-onglets-infos.liquid (bouton « Télécharger » de la page) ou le code copié avec le bouton « Copier » : je te le joins ou je le colle après ce message.
Emplacement dans le thème : sections/nahnah-annonces-onglets-infos.liquid (Liquid, puis {% stylesheet %} et {% javascript %}, dans ce seul fichier).
Étapes d’installation :
1. Dans Shopify : Boutique en ligne → Thèmes → bouton « … » du thème → Modifier le code.
2. Dossier « sections » → « Ajouter une section » (ou « Nouveau fichier ») → nomme-la « nahnah-annonces-onglets-infos ».
3. Efface le contenu proposé, colle le code de l’onglet Liquid (fichier complet), puis Enregistrer.
4. Ouvre Personnaliser → Ajouter une section → choisis-la, règle les textes et les couleurs, puis Enregistrer.
Ce que j’attends de toi :
- Guide-moi pas à pas dans Shopify : Boutique en ligne → Thèmes → « … » → Modifier le code → dossier sections → Ajouter une section, puis Personnaliser → Ajouter une section.
- Propose-moi d’adapter les couleurs, les textes et les liens à ma marque : demande d’abord mes couleurs (codes hexadécimaux), mon ton et mes liens.
- Garde le bloc {% schema %} et tous ses réglages (identifiants, types, presets) : je dois pouvoir tout régler ensuite dans l’éditeur de thème.
- Rends-moi le fichier complet modifié, prêt à coller, sans faux avis, fausse urgence ni chiffre inventé.
Si tu as le connecteur NAHNAH AI (MCP), récupère directement le code exact avec l’outil obtenir_code_element (id : annonces-onglets-infos).Installer dans ma boutique
En un clic, la section est ajoutée à un thème de ta boutique Shopify connectée (un thème non publié par défaut).
Chargement de tes boutiques…
Installer dans Shopify
- Dans Shopify : Boutique en ligne → Thèmes → bouton « … » du thème → Modifier le code.
- Dossier « sections » → « Ajouter une section » (ou « Nouveau fichier ») → nomme-la « nahnah-annonces-onglets-infos ».
- Efface le contenu proposé, colle le code de l’onglet Liquid (fichier complet), puis Enregistrer.
- Ouvre Personnaliser → Ajouter une section → choisis-la, règle les textes et les couleurs, puis Enregistrer.
Installer via le MCP
Depuis Claude, Claude Code ou ChatGPT connecté à NAHNAH AI, demande : « Donne-moi le code de l’élément annonces-onglets-infos de la bibliothèque NAHNAH AI et les étapes pour l’installer ». L’assistant récupère le code et les étapes (outil obtenir_code_element), gratuitement.
Boutique connectée à NAHNAH AI : l’assistant peut aussi l’installer directement (outil installer_element).
Connecter le MCP