A.-M. Cubat PMB – Construction du portail – Concepts et exemples
Source : http://amcubat.be/docpmb/portail-construction-concepts-exemples
Page 9
L
A VERSION DE DÉMO DU PORTAIL
Pour illustrer le portail et les concepts de base qui y sont liés, il me fallait un support, un exemple accessible à tout le monde, c’est pourquoi j’ai choisi une base que vous pouvez facilement télécharger et installer : la version de démo du portail, que vous pourrez ainsi explorer à l’aise. Sinon, les explications fournies ici risquent de rester fort théoriques …
Rien ne vaut la pratique pour comprendre comment tout cela fonctionne ! Installez donc la version dé démo !!
N.B. Pour rédiger ce tutoriel, j’ai employé diverses versions de PMB, comprises entre la 4.0.8 et la 4.1.5, et j’ai travaillé sur plusieurs bases, installées sur le même serveur (dans mon cas, en mode local avec EasyPhp 12.1)
Rappel : PMB 4 requiert du Php 5.3 ou 5.4 – Php 5.4 n’est possible qu’à partir de PMB 4.0.8
Lien pour le téléchargement http://forge.sigb.net/redmine/projects/pmb/files
Installation (Windows) http://amcubat.be/docpmb/pmb-installation-windows-easyphp121
Plusieurs bases sur le même serveur
La rédaction de ce tutoriel s’est étalée sur plusieurs mois.
Au fil du temps, le répertoire pmb4perso s’est parfois appelé aussi pmbv4perso, et la base bibli4perso a aussi existé sous le nom de bibliv4perso.
Idem pour les autres répertoires et bases, il y a parfois un « v » en plus ou en moins.
L’existence de 2 noms explique des divergences mineures entre certaines captures d’écran
Employer de préférence Firefox - une version récente de Firefox !
Notes sur la compatibilité entre les versions de PMB
Commencez par créer plusieurs répertoires dans le dossier www, et veillez à leur donner des noms significatifs.
Copiez-collez dans chaque répertoire la version décompressée du zip de PMB.
Rappel : ne faites pas de copie à partir d’un répertoire où PMB aurait déjà été installé, car lors de l’installation, certains fichiers sont renommés, tandis que d’autres sont créés et paramétrés. Il faut démarrer avec un PMB « vierge ».
Voici la liste des bases que j’ai employées dans le cadre de ce tutoriel :
pmb4donnees (ou pmbv4donnees) : cela symbolise votre « vraie » base, avec vos données o
Il n’est pas indispensable de réinstaller ailleurs votre base réelle, vous y avez probablement accès par Internet. L’élaboration du portail peut se faire en bonne partie sur une autre base de taille plus réduite : en effet, on gère plus facilement un stock limité de notices, et les sauvegardes ne posent pas de problème particulier. La phase finale se fera bien sûr sur la vraie base. o
Pour ce tutoriel, j’ai mis dans pmb4donnees les mêmes données que dans la base de démo du portail, mais j’ai supprimé tous les éléments liés au portail, c’est donc comme si on démarrait à zéro. Il y a déjà un catalogue, mais pas de portail. La feuille de style est genbib.
pmb4portail (ou pmbv4portail): la démo du portail, que j’essaie de garder « intacte » ou à peu près. o
Elle me sert de modèle, d’exemple, et est paramétrée pour la feuille de style pmb4 o
Les seules modifications que j’y ai apportées sont décrites dans ce chapitre-ci.
pmb4perso (ou pmbv4perso) : la base de travail, la base de test (essais personnels du portail) o
Vous pouvez installer là aussi dans un premier temps la version de démo du portail et faire quelques tests, ainsi la base pmb4portail reste dans son état d’origine. C’est plus pratique pour comparer et comprendre car vous gardez un modèle intact (pmb4perso), mais ce n’est pas indispensable. o
Lorsque vous aurez mieux compris le fonctionnement du portail, vous devrez de toute façon y installer un « pmb4standard », y restaurer la configuration globale de votre base en production, ainsi que quelques données (en nombre limité !), avant d’entamer la construction de votre portail. o
Avant d’activer le portail, je vous suggère de sauvegarder l’ensemble des tables liées au portail.
Cela vous donnera une copie des tables « portail » quasi vides, avec le strict minimum vital. C’est utile si vos premiers essais ne sont guère concluants : dans ce cas, restaurez ce genre de sauvegarde,
et vous pouvez repartir à zéro, avec un portail « vierge ». Voir organiser les sauvegardes
pmb4standard (ou pmbv4standard) - avec les données essentielles pour démarrer rapidement o
C’est une base sans notices mais déjà bien paramétrée, qui convient par exemple pour faire quelques tests rapides de différentes feuilles de style, avant d’en choisir une que vous pourriez employer. o
Si vous avez oublié de réaliser une sauvegarde des tables portail « quasi vides » avant d’activer le portail (voir ci-dessus), ou si vous ne la retrouvez plus, vous pouvez installer quelque part un PMB standard, et créer cette sauvegarde, ce « kit de dépannage ».
Bien sûr, vous n’êtes pas obligé d’installer toutes ces bases, mais je trouve utile, surtout au début, de pouvoir ouvrir plusieurs bases dans le navigateur, et de comparer ainsi plus facilement « un modèle à imiter » (pmb4portail) et vos essais personnels. Il suffit en effet de passer d’un onglet à l’autre pour changer de base, cela facilite vraiment la compréhension des concepts fondamentaux.
A.-M. Cubat PMB – Construction du portail – Concepts et exemples
Source : http://amcubat.be/docpmb/portail-construction-concepts-exemples
Page 10
Astuce au moment de l’installation – si on a plusieurs bases sur le même serveur
SI on a plusieurs bases sur le même serveur, chacune doit avoir un nom différent. Vous allez effectuer des sauvegardes et des restaurations, il faut donc donner des paramètres pour restaurer des tables : nom de la base, nom de l’utilisateur et mot de passe.
Pour la facilité, j’emploie un système mnémotechnique tout simple lorsque je travaille sur mon ordinateur, ainsi je me souviens immédiatement des noms à introduire pour une restauration avec le processus emergency.
En situation réelle de production, le système est plus complexe, et j’évite bien sûr d’employer trois fois le même nom, pour des raisons de sécurité.
Nom du répertoire d’installation
pmb4portail (ou pmbv4portail)
Nom de la base, de l’utilisateur et mot de passe
bibli4portail (ou bibliv4portail) pmb4donnees (ou pmbv4donnees) pmb4perso (ou pmbv4perso) pmb4standard (ou pmb4standard) bibli4donnees (ou bibliv4donnees) bibli4perso (ou bibliv4perso) bibli4standard (ou bibliv4standard)
Installer une base PMB
Lorsqu’on lance le processus d’installation, on a le choix entre diverses options.
Puisque vous vous intéressez au portail, je suppose que votre base est déjà accessible en ligne.
Mais même si ce n’est pas (encore) le cas, même si la consultation ne se fait pour le moment que via l’Intranet, choisissez des options d’installation compatibles.
Notes sur la compatibilité entre les versions de PMB
Pour des raisons évidentes de sécurité, il vaut mieux éviter de garder le nom par défaut (bibli), car ce nom est connu de tous.
En outre, si on installe plusieurs bases PMB sur le même serveur, il faut leur donner des noms différents, sinon on perd des données.
Si vous ne cochez aucune option, vous installez une base quasi vide – c’est plus compliqué à gérer, surtout pour une 1 e
approche du logiciel, car rien (ou presque rien)
n’est paramétré, donc vous risquez d’oublier de configurer quelque chose d’important, et de créer ainsi des dysfonctionnements !
Le seul cas où cela pourrait servir, c’est si vous allez ensuite restaurer une base déjà bien paramétrée. C’est pourquoi je déconseille en général cette option.
Une base avec les données essentielles pour démarrer rapidement – c’est la
meilleure manière d’installer PMB, surtout au début, et même plus tard, si vous
voulez démarrer une base en partant à peu près de zéro. Au moins, vous êtes sûr que tout ce qui doit être paramétré l’est déjà, et rien ne vous empêche de modifier par la suite les options choisies par défaut. En outre, vous pouvez installer éventuellement un thésaurus et une indexation décimale, plusieurs possibilités vous sont offertes.
A partir de PMB 4, vous disposez aussi de nombreuses requêtes SQL installées
dans les 3 onglets concernés (Circulation, Catalogue et Administration). Explorez cet aspect, vous y trouverez sûrement des procédures bien utiles.
N.B. Si vous voulez jeter un coup d’œil du coup du côté des nouveautés (comme les procédures SQL), ne touchez pas à cette base, évitez donc d’y restaurer trop vite une ancienne base déjà configurée, car vous feriez une « marche arrière dans le temps ».
Cliquer sur la 2 e
option (données du jeu de test) sélectionne automatiquement la 1 e
(données essentielles). Vous avez donc quelques exemples, mais ils sont moins nombreux, moins diversifiés, ce ne sont d’ailleurs pas les mêmes que dans l’option n° 3.
Le thésaurus et l’indexation décimale vous sont imposés, pas de choix possible.
La 3 e
option installe le portail et des données de test. Tout est préconfiguré, le portail est directement opérationnel. Le thésaurus et l’indexation décimale vous sont imposés.
Même si le portail ne fait pas partie de vos priorités pour le moment, cela vaut la peine d’installer cette démo, car elle met davantage en valeur les nouvelles fonctionnalités de PMB 4.
A.-M. Cubat PMB – Construction du portail – Concepts et exemples
Source : http://amcubat.be/docpmb/portail-construction-concepts-exemples
Page 11
Organiser les sauvegardes
Bien entendu, même si vos premiers essais ne sont guère concluants, même si vous avez bouleversé l’agencement des cadres et que l’aspect général est moins séduisant qu’au départ, ce n’est pas grave s’il s’agit de la démo. Dans le pire des cas, il suffirait de réinstaller la base.
Autant éviter quand même ce genre de désagrément, surtout dès que vous travaillez « en vrai ».
Voici donc quelques précautions à prendre afin de sauvegarder vos plus belles réussites (soyons optimistes) ou de récupérer la version précédente, voire même la version d’origine en cas de catastrophe graphique !
1. M
ETTRE À JOUR LE GROUPE DE TABLES APPELÉ
«
TOUT
»
Lorsqu’on installe une nouvelle base, ou lorsqu’on met PMB à jour, le groupe de tables appelé « tout » ne mérite pas vraiment son nom. En effet, toutes les tables ne sont pas cochées, donc si vous lancez cette sauvegarde sans vérifier, vous risquez de vous faire piéger. Vous pourriez croire que tout est sauvegardé, alors que ce n’est pas le cas.
Exemple de message d’erreur
Administration > Sauvegarde > Groupes de tables
Solution – Sélectionner le groupe appelé « tout »
Cliquer sur « Tout cocher » et ensuite sur « Enregistrer » (en bas de la page)
Le message d’erreur a disparu, vos sauvegardes sont désormais complètes.
Sauvegardez la base dans sa totalité (par défaut, son nom commence par le préfixe full).
Pensez aussi à faire cette vérification dans vos autres bases !
2. C
RÉER DES JEUX DE SAUVEGARDE SUPPLÉMENTAIRES
Il vaut mieux réaliser des sauvegardes fréquentes, afin de ne pas perdre les fruits de son travail.
Mais une sauvegarde complète peut générer des fichiers très lourds si la base est volumineuse, donc on hésite parfois.
C’est d’ailleurs une des raisons pour lesquelles je vous avais suggéré de travailler avec un nombre limité de notices.
Il est pourtant simple de ne sauver qu’une partie de la base, par exemple celle qui concerne le portail.
Voici les nouveaux groupes de tables et les jeux de sauvegarde que je vous conseille de créer au début.
A.-M. Cubat PMB – Construction du portail – Concepts et exemples
Source : http://amcubat.be/docpmb/portail-construction-concepts-exemples
Page 12
Le jeu de sauvegarde appelé « Tout » (préfixe « full ») enregistre l’ensemble de la
base, du moins si vous avez veillé à mettre à jour le groupe de tables qui y
correspond !! (voir ci-dessus, point n° 1).
Pour enregistrer l’ensemble du portail (articles, rubriques, cadres, modules, propriétés CSS, mise en page …), il suffit de repérer toutes les tables dont le nom
commence par cms. On ne peut pas rêver plus simple !
J’ai donc créé un jeu de sauvegarde « CMS » (préfixe identique)
Je parlerai plus tard d’un autre jeu de sauvegarde, plus complet que cms_min : toutes les tables liées au
contenu éditorial (cms_edit).
Ce jeu cms_edit permet d’enregistrer et de restaurer si nécessaire les rubriques, les articles, leurs liens avec votre base
(notices, étagère, descripteurs …) et l’indexation de leur contenu.
Il peut aussi inclure les tables liées au module Portfolio.
Cela peut s’avérer utile si vous voulez repartir à zéro au niveau graphique
(feuille de style, agencement des zones et des cadres), mais conserver le contenu éditorial (arborescence des rubriques et articles déjà rédigés).
Voir sauvegarder le contenu éditorial
J’ai aussi créé un jeu de sauvegarde « CMS – Minimum » (préfixe cms_min).
Il est pratique de regrouper 5 tables dans un jeu de sauvegarde spécifique. o cms_editorial_custom, cms_editorial_custom_lists, cms_editorial_publications_status, cms_editorial_types o cms_managed_modules
Vous pourrez ainsi vous épargner du travail, en restaurant dans votre base la configuration éditoriale minimum de la démo, et en l’étoffant ensuite. En outre, cela
permet d’employer directement les templates Django inclus dans la démo et les
requêtes SQL que j’ai fournies. Voir infos détaillées dans le chapitre suivant.
Le portail se configure dans les tables dont le nom commende par cms, mais aussi
dans Administration > Outils > Paramètres de l’OPAC / du Portail
Pour éviter de devoir sauvegarder l’ensemble de la base à intervalles réguliers, il est parfois nécessaire de sauvegarder la table des paramètres qui correspond à l’état
du portail à tel ou tel moment précis.
Un jeu de sauvegarde spécifique, qui contient uniquement cette table, peut donc s’avérer utile pendant la phase d’élaboration du portail (préfixe params).
J’ai également prévu une sauvegarde distincte des requêtes SQL des 3 onglets
(Catalogue, Circulation, Administration), et du classement des procédures (dans l’onglet Administration). 4 tables sont concernées : o caddie_procs, empr_caddie_procs, procs et procs_classements
Vous me connaissez, je suppose donc que cela ne vous surprendra pas ;-)
Il va de soi que ce dernier jeu de sauvegarde n’est pas indispensable ! (préfixe sql)
3. S
AUVEGARDER SEULEMENT LA MISE EN PAGE DU PORTAIL ET LES PROPRIÉTÉS
CSS
Si je mentionne ce sujet ici dans l’introduction, c’est pour attirer votre attention sur le fait qu’il s’agit d’une sauvegarde partielle !
Cliquer sur ce bouton « Enregistrer » n’enregistre qu’un nombre réduit d’éléments.
Enregistrer une « version » du portail ne signifie pas « enregistrer tout le portail » ni « enregistrer tout l’aspect graphique » !
Lorsqu’on construit le portail (onglet Portail, Construire), et qu’on a déplacé ou modifié des éléments, il faut enregistrer les nouvelles propriétés CSS des zones et des cadres afin de préserver les modifications – du moins si on est content de cette mise en page !
Cliquer sur « enregistrer » (dans le volet de droite, en bas).
Cela crée une « version » : une copie de la mise en page.
Ce système de « versions » sauvegarde seulement la mise en page, la disposition des zones et des cadres et leurs propriétés CSS,
pas les cadres en tant que tels (le paramétrage du contenu est enregistré quand on sauvegarde le cadre)
ni le contenu éditorial géré dans l’onglet Administration ou dans l’onglet Portail
Si vous avez entretemps supprimé un cadre, restaurer une « version » antérieure ne va pas le ressusciter !
Ce système de « version » permet uniquement de repositionner les cadres qui existent encore à l’endroit qu’ils occupaient auparavant, en rendant aux zones et aux cadres leurs propriétés CSS antérieures.
Des infos détaillées sur ce sujet seront fournies au moment opportun : Manipuler les cadres
A.-M. Cubat PMB – Construction du portail – Concepts et exemples
Source : http://amcubat.be/docpmb/portail-construction-concepts-exemples
Page 13
Sauvegarder
– restaurer la configuration minimum
La configuration minimum de la base définit les types de contenu des rubriques ou articles et les statuts de publication.
Elle contient aussi les templates Django inclus dans la démo.
En théorie, vous pouvez partir de zéro, et tout créer (statuts et types de contenu). Toutefois, si vous avez une version compatible de la démo, vous pouvez facilement récupérer sa configuration éditoriale de base, et l’étoffer ou la modifier ensuite, afin de l’adapter à vos
besoins spécifiques. En outre, restaurer ce paramétrage vous permet d’employer directement les
que j’ai mises au point, vous ne devrez pas les adapter. Je vous conseille de le faire, c’est un gain de temps appréciable.
Voir
Notes sur la compatibilité entre les versions de PMB
Créer cette sauvegarde
Configuration minimum du contenu éditorial et templates Django : liste des 5 tables du jeu cms_min
Nom des tables
Cms_editorial_types
Cms_editorial_custom
Cms_editorial_custom_lists
Types de contenu des rubriques et articles
Champs personnalisés liés aux définitions des types de contenu des rubriques et articles
Cms_editorial_publication_states Statuts de publication
Commentaire
Attention ! Ces 3 tables forment un tout indissociable. Si on restaure une de ces tables, il faut aussi restaurer les 2 autres !
Cms_managed_modules Templates Django inclus dans la démo
Ne pas sélectionner cms_editorial_custom_values ! Ce sont des valeurs liées à une base précise, elles ne sont donc pas transférables.
A quoi sert cette sauvegarde partielle, si on a déjà une sauvegarde complète de toutes les tables cms ?
Il ne semble de prime abord pas indispensable de créer un jeu de sauvegarde supplémentaire.
En théorie, vous avez déjà ce qu’il vous faut avec le jeu de sauvegarde cms.
En effet, au début de la phase de restauration, on vous propose de restaurer toutes les tables (elles sont toutes cochées).
Il suffit donc de décocher les autres tables, afin de ne garder que les 5 que vous pouvez récupérer sans souci.
Le jeu de sauvegarde « cms » comprend 23 tables pour PMB 4.0.13 et 26 tables pour PMB 4.1
Si je vous conseille malgré tout de créer un jeu de sauvegarde minimum avec uniquement ces 5 tables, c’est qu’il y a une raison.
La sauvegarde partielle (cms_min) est plus « sûre » que la sauvegarde complète !
En effet, cela permet d’éviter les erreurs dues à la distraction ou à la fatigue, puisqu’il ne faut plus vérifier quelles tables sont cochées ou non.
Sinon, on risque par malheur d’en oublier une, ou
d’en restaurer une qui n’aurait pas dû l’être !
Restaurer cette sauvegarde
Vous pouvez restaurer dans votre base la sauvegarde partielle (créée à partir de la démo), grâce au processus emergency.
Rappel : pour lancer le processus emergency, saisir dans le navigateur une adresse de ce type-ci http://127.0.0.1/pmb4perso/admin/sauvegarde/emergency/emergency.php
A.-M. Cubat PMB – Construction du portail – Concepts et exemples
Source : http://amcubat.be/docpmb/portail-construction-concepts-exemples
Page 14
Particularités de la démo
1. T
OUT ARTICLE
(
MÊME LIÉ À UNE ACTUALITÉ ÉVÉNEMENTIELLE
)
EST ÉTERNELLEMENT VISIBLE DANS LA DÉMO
!
Les dates de publication ne sont pas précisées dans la démo.
Lorsqu’on présente par exemple une animation, deux types de paramètres interviennent au niveau des dates :
La date de l’événement lui-même
o
Soit un jour précis o
Soit pendant une période (de telle à telle date)
Les dates de publication de l’article
o
La durée pendant laquelle l’article doit être visible
Ces deux types de dates sont distincts. Exemple : on peut parler d’une part d’un événement qui a lieu le 10 octobre, ou bien du
10 au 15 octobre, et décider d’autre part que l’article qui annonce cette animation sera visible dès le 15 septembre, et qu’il disparaitra automatiquement dès le 16 octobre.
Ce système évite de garder en page d’accueil ou ailleurs des infos qui sont visiblement obsolètes ! Parler au futur d’une activité qui s’est déroulée il y a une quinzaine de jours, cela ne fait pas sérieux …
Toutefois, dans le cas de la démo, les dates de publication n’ont pas été spécifiées, afin d’éviter la disparition intempestive de ces articles d’actualité. En soi, c’est tout à fait logique pour une démo censée résister à l’épreuve du temps ;-)
Dates de publication
Dates de l’événement
Ce genre de configuration est aussi possible dans un portail « normal », où on ne précise pas toujours les dates de publication, mais c’est pour une autre raison que dans la démo.
En effet, il est tout à fait logique de ne pas mentionner les dates de publication s’il s’agit d’un article qui doit
être toujours visible car son contenu est permanent, par exemple la présentation de la bibliothèque ou de l’institution, les infos pratiques, l’aide à la recherche, etc.
Toutes les rubriques et tous les articles de la démo ont le statut « publié », ils sont donc visibles dans l’OPAC.
La visibilité d’un article n’est pas seulement une question de dates de publication, elle dépend aussi de son statut de
publication
(brouillon, publié et public, publié pour les abonnés …)
et du statut de publication de sa rubrique parente.
Dans la démo, 2 statuts de publication existent : brouillon et publié. Mais tout a été « publié » !
(tout = rubriques + articles)
Tous les articles de la démo sont accessibles en page d’accueil, soit via le menu, soit via la « liste de brèves ».
Les 2 critères mentionnés jusqu’à présent (dates de publication et statut de publication) ne suffisent pas pour rendre un article visible. Il faut aussi prévoir un lien vers cet article, « quelque part » dans la configuration du portail.
Le système le plus simple à mettre en œuvre : en affichant les rubriques parentes dans le menu, on a d’office un lien vers tous les articles qui en font partie.
Si le paramétrage diffère de celui de la démo, autrement dit si un article n’est pas lié au menu
(via sa rubrique parente visible)
ou ne fait pas partie d’une liste d’articles affichés dans une page
(comme les brèves en page d’accueil)
, il est quasi introuvable. Si la recherche dans le contenu éditorial a été configurée, elle permet en théorie de trouver l’article, mais vu qu’on ignore a priori qu’il existe, et donc quel mot saisir comme critère de recherche, il faut vraiment espérer un sérieux coup de pouce du hasard !
A.-M. Cubat PMB – Construction du portail – Concepts et exemples
Source : http://amcubat.be/docpmb/portail-construction-concepts-exemples
Page 15
2. L
E CARROUSEL DE NOTICES N
’
EST PAS VISIBLE IMMÉDIATEMENT
Lorsqu’on regarde dans la colonne de gauche et qu’on voit la liste des cadres (en page d’accueil), on y trouve 2 carrousels :
Un carrousel d’articles d’actualité (présentés en mode « fondu enchaîné ») o
Exemple d’article : Des bibliothèques pleines de fantômes
Un carrousel de notices (les couvertures de quelques livres, présentées en défilement vertical) o
Certaines acquisitions récentes de la bibliothèque
Mais quand on regarde la page d’accueil dans le volet de droite, on ne voit qu’un seul carrousel : celui des articles !
Question existentielle : où se cache donc le carrousel de notices ?
N.B. Ce carrousel n’a pas
été créé avec le module
Carrousel, mais avec le module Liste de notices.
Je vais dès le début vous montrer comment rendre ce carrousel de notices visible !
Il serait quand même dommage de s’en priver … en outre, c’est une occasion d’apprendre comment éditer un cadre ;-)
Deux onglets :
« Contenu » voir la liste des cadres (de l’OPAC, du portail, hors de la page)
« Edition CSS » éditer les propriétés CSS d’un cadre préalablement sélectionné
Pour éditer le contenu d’un cadre, cliquez sur l’icône du crayon (à gauche du nom donné au cadre)
Définir les propriétés générales du cadre (nom, page, source de données, template Django ...)
Pour éditer les propriétés CSS d’un cadre, cliquez sur son nom, et ensuite, sur l’onglet CSS.
Définir les attributs CSS du cadre sélectionné (dimensions, positionnement, marges …)
Si vous voulez ensuite retourner à la liste des cadres, cliquez sur l’onglet « Contenu »
Ce cadre n’est pas « fixe »
(fixe = visible partout), il Eureka ! est attaché à une page spécifique, la page d’accueil du portail.
Voici la cause du « miniproblème » : ce champ est vide dans la démo, on n’a
Dès que vous aurez saisi une valeur logique dans le champ « nombre maximum d’éléments à renvoyer », enregistré le nouveau contenu du module et actualisé la page, vous verrez enfin le carrousel défiler à droite de l’écran ! pas défini le nombre maximum d’éléments à renvoyer.
N.B. Dans la démo, l’étagère « Nouveautés » est liée à un seul panier, qui comprend 13 notices.
La valeur maximum possible est donc 13.
N’oubliez pas de sauvegarder le contenu
(le bouton « enregistrer » est tout en bas)

Public link updated
The public link to your chat has been updated.