⏳ Comptes à reboursGratuit · 0 NahnahPar NAHNAH
Ouvert maintenant · ferme dans
Pastille d'horaires en direct : « Ouvert · ferme dans 1 h 20 » ou « Fermé · ouvre lundi à 9 h », calculée sur tes vrais jours et heures d'ouverture.
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-compte-a-rebours-horaires-ouverture.liquid (Liquid, CSS et JS inclus).
{%- comment -%} NAHNAH AI · Ouvert maintenant · ferme dans {%- endcomment -%}
<div class="nn-compte-a-rebours-horaires-ouverture" data-jours="{{ section.settings.jours | escape }}" data-ouverture="{{ section.settings.ouverture }}" data-fermeture="{{ section.settings.fermeture }}" style="--nn-fond: {{ section.settings.couleur_fond }}; --nn-texte: {{ section.settings.couleur_texte }}; --nn-ouvert: {{ section.settings.couleur_ouvert }}; --nn-ferme: {{ section.settings.couleur_ferme }};" hidden>
<span class="nn-compte-a-rebours-horaires-ouverture__point" aria-hidden="true"></span>
<span class="nn-compte-a-rebours-horaires-ouverture__nom">{{ section.settings.nom | escape }}</span>
<span class="nn-compte-a-rebours-horaires-ouverture__etat" aria-live="polite"></span>
</div>
{% schema %}
{"name":"Horaires en direct","settings":[
{"type":"text","id":"nom","label":"Nom (boutique, service client…)","default":"Service client"},
{"type":"text","id":"jours","label":"Jours ouverts (1 = lundi … 7 = dimanche, séparés par des virgules)","default":"1,2,3,4,5"},
{"type":"range","id":"ouverture","label":"Heure d'ouverture","min":0,"max":23,"step":1,"unit":"h","default":9},
{"type":"range","id":"fermeture","label":"Heure de fermeture","min":1,"max":24,"step":1,"unit":"h","default":18},
{"type":"color","id":"couleur_fond","label":"Fond","default":"#FFFFFF"},
{"type":"color","id":"couleur_texte","label":"Texte","default":"#111827"},
{"type":"color","id":"couleur_ouvert","label":"Couleur ouvert","default":"#16A34A"},
{"type":"color","id":"couleur_ferme","label":"Couleur fermé","default":"#DC2626"}],
"presets":[{"name":"Ouvert maintenant · ferme dans"}]}
{% endschema %}
{% stylesheet %}
/* Pastille d'état avec point qui pulse */
.nn-compte-a-rebours-horaires-ouverture{display:inline-flex;align-items:center;gap:10px;margin:12px 16px;padding:8px 16px;border-radius:999px;background:var(--nn-fond);color:var(--nn-texte);box-shadow:0 1px 3px rgba(0,0,0,.12);font-size:14px}
.nn-compte-a-rebours-horaires-ouverture__point{width:10px;height:10px;border-radius:50%;background:var(--nn-ferme);position:relative}
.nn-compte-a-rebours-horaires-ouverture.est-ouvert .nn-compte-a-rebours-horaires-ouverture__point{background:var(--nn-ouvert)}
.nn-compte-a-rebours-horaires-ouverture.est-ouvert .nn-compte-a-rebours-horaires-ouverture__point::after{content:"";position:absolute;inset:0;border-radius:50%;background:var(--nn-ouvert);animation:nn-compte-a-rebours-horaires-ouverture-pulse 2s ease-out infinite}
.nn-compte-a-rebours-horaires-ouverture__nom{font-weight:600}
.nn-compte-a-rebours-horaires-ouverture__etat{opacity:.8}
@keyframes nn-compte-a-rebours-horaires-ouverture-pulse{to{transform:scale(2.6);opacity:0}}
@media (prefers-reduced-motion: reduce){.nn-compte-a-rebours-horaires-ouverture__point::after{animation:none!important;display:none}}
{% endstylesheet %}
{% javascript %}
// Calcule l'état ouvert/fermé et le temps avant le prochain changement
(function () {
var noms = ['dimanche', 'lundi', 'mardi', 'mercredi', 'jeudi', 'vendredi', 'samedi'];
document.querySelectorAll('.nn-compte-a-rebours-horaires-ouverture').forEach(function (bloc) {
// Jours au format 1 = lundi … 7 = dimanche, convertis vers getDay()
var jours = (bloc.getAttribute('data-jours') || '').split(',').map(function (j) { return parseInt(j, 10) % 7; }).filter(function (j) { return !isNaN(j); });
var ouv = parseInt(bloc.getAttribute('data-ouverture'), 10), fer = parseInt(bloc.getAttribute('data-fermeture'), 10);
if (!jours.length || isNaN(ouv) || isNaN(fer) || fer <= ouv) { return; }
var etat = bloc.querySelector('.nn-compte-a-rebours-horaires-ouverture__etat');
function duree(ms) { var m = Math.ceil(ms / 60000), h = Math.floor(m / 60); return (h ? h + ' h ' : '') + (m % 60) + ' min'; }
function maj() {
var n = new Date();
var debut = new Date(n); debut.setHours(ouv, 0, 0, 0);
var fin = new Date(n); fin.setHours(fer, 0, 0, 0);
if (jours.indexOf(n.getDay()) > -1 && n >= debut && n < fin) {
bloc.classList.add('est-ouvert');
etat.textContent = 'Ouvert · ferme dans ' + duree(fin - n);
} else {
bloc.classList.remove('est-ouvert');
// Prochaine ouverture : aujourd'hui plus tard ou un jour suivant
var p = new Date(debut);
if (!(jours.indexOf(n.getDay()) > -1 && n < debut)) {
do { p.setDate(p.getDate() + 1); } while (jours.indexOf(p.getDay()) < 0);
}
var reste = p - n;
etat.textContent = reste < 6 * 3600000 ? 'Fermé · ouvre dans ' + duree(reste) : 'Fermé · ouvre ' + (p.getDate() === new Date(n.getTime() + 86400000).getDate() ? 'demain' : noms[p.getDay()]) + ' à ' + ouv + ' h';
}
bloc.hidden = false;
}
maj();
setInterval(maj, 30000);
});
})();
{% 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 : « Ouvert maintenant · ferme dans » (Comptes à rebours)
Description : Pastille d'horaires en direct : « Ouvert · ferme dans 1 h 20 » ou « Fermé · ouvre lundi à 9 h », calculée sur tes vrais jours et heures d'ouverture.
Page de l’élément (aperçu en direct) : https://ai.nahnah.shop/bibliotheque-shopify/compte-a-rebours-horaires-ouverture
Fichier : nahnah-compte-a-rebours-horaires-ouverture.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-compte-a-rebours-horaires-ouverture.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-compte-a-rebours-horaires-ouverture ».
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 : compte-a-rebours-horaires-ouverture).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-compte-a-rebours-horaires-ouverture ».
- 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 compte-a-rebours-horaires-ouverture 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