Exemples supplémentaires. PMB Services PMB
A.-M. Cubat PMB – Construction du portail – Concepts et exemples
Source : http://amcubat.be/docpmb/portail-construction-concepts-exemples
Page 157
E
XEMPLES SUPPLÉMENTAIRES
Le point commun de ces exemples supplémentaires est qu’ils ne sont pas illustrés dans la démo du portail, contrairement aux exemples du chapitre précédent.
A partir du moment où on a compris les concepts de base liés aux modules et cadres, et les connexions entre les pages du portail, on peut se mettre à créer des variantes et à innover ;-)
Variantes de quelques cadres et pages
Les cadres et les pages (portail ou OPAC) de la démo ne sont pas « intangibles », vous pouvez par exemple
conserver un cadre mais modifier le critère de sélection des données ou changer de « vue » (le mode d’affichage)
ajouter un cadre dans une page existante
créer de nouveaux types de contenu (articles) pour diversifier les critères de sélection
PAGE DU PORTAIL QUI AFFICHE UNE NOTICE
A
JOUTER LE CADRE
« N
OTICES DU MÊME AUTEUR PRINCIPAL
»
Dans le commentaire de ce cadre, j’avais montré que cela risquait de surcharger cette page de l’OPAC, et de renforcer une impression de « déjà-vu », surtout si on y affichait déjà des suggestions comme « Dans le même rayon » ou « Peut-être aimerez-vous ». En effet, cela augmenterait probablement le nombre de notices et donc de vignettes identiques.
« Notices du même auteur » (version OPAC)
Rappel - Ces cadres sont visibles dans la page OPAC qui affiche une notice, à la fin des cadres habituels.
A la fin de mes explications initiales, j’avais suggéré d’insérer ce cadre dans la page du portail qui affiche une notice.
Ainsi, ce cadre ne serait pas visible en permanence dans l’OPAC pour toutes les notices de la base, on ne le verrait que si la notice est affichée dans la page adéquate du portail. Voici comment procéder.
Page du portail qui affiche une notice
Paramétrage de la démo - Un seul cadre : affichage d’une notice
Cette page est peu remplie, on peut facilement y ajouter un cadre supplémentaire, sans nuire à l’esthétique de l’ensemble.
Je vais montrer comment ajouter le cadre : Notices du même auteur.
Je garde l’idée du carrousel horizontal (comme dans la version OPAC).
Mais vous pourriez aussi employer d’autres critères de sélection, et donc d’autres modules pour générer un nouveau cadre dans cette page :
Notices similaires
Notices dont la cote de rangement est proche
A.-M. Cubat PMB – Construction du portail – Concepts et exemples
Source : http://amcubat.be/docpmb/portail-construction-concepts-exemples
Page 158
Je ne vais pas détailler le paramétrage de ce cadre en version « page du portail », vu qu’il quasi identique à la version OPAC.
Je vais seulement relever quelques différences.
N.B. Si nécessaire, relire « Notices du même auteur principal ».
Formulaire pour le carrousel de notices du même auteur qu’une notice– Module « Liste de notices »
Version : page de l’OPAC qui affiche une notice Version : page du portail qui affiche une notice
Différences entre ces deux formulaires
Cadre attaché à une page de l’OPAC
Sélection d’une notice depuis le permalink
URL de la page de l’OPAC qui affiche une notice
Le permalink contient l’dentifiant de la notice. http://127.0.0.1/... /opac_css/index.php?lvl=notice_display&id=112
Cadre attaché à une page du portail
Sélection d’une notice depuis une variable d’environnement
URL de la page du portail qui affiche une notice
La variable d’environnement est ici l’identifiant de la notice (id_notice) http://127.0.0.1/..../opac_css/index.php?lvl=cmspage&pageid=7&id_notice=112
Aucune différence sgnificative (j’ai par hasard réduit à 5 le nombre d’éléments à renvoyer et à afficher, mais c’est un détail).
Résultat final
Rappel : on aurait aussi pu employer un autre critère de sélection des données que les notices du même auteur principal, par exemple les notices similaires ou celles dont la cote de rangement est proche.
Des choix comme « Notices des catégories d’un article » ou « Notices d’une étagère » seraient bien sûr impossibles, vu que la page courante est celle qui affiche une notice, et qu’il n’y a dès lors aucun lien avec les articles.
A.-M. Cubat PMB – Construction du portail – Concepts et exemples
Source : http://amcubat.be/docpmb/portail-construction-concepts-exemples
Page 159
PAGE DU PORTAIL QUI AFFICHE UN ARTICLE
U
N AUTRE USAGE DU CADRE
« L
ISTE DE NOTICES
–
E
TAGÈRE LIÉE À UN ARTICLE
»
La page qui affiche un article et une liste de notices comprend trois cadres, mais tous ne sont pas nécessairement affichés.
Un cadre issu du module Affichage d’un article
o
Visible en toute circonstance – c’est le cadre principal de cette page
Carrousel de notices dans les mêmes catégories qu’un article – Etagère créée de manière dynamique o Visible si certaines catégories sont communes à l’article et aux notices - Peu importe le type de contenu de l’article
Liste de notices - Une étagère thématique associée à un article : ex. Nouveautés du rayon Fiction jeunesse o Visible seulement si l’article est de type Sélection et si l’étagère préalablement choisie contient des notices
Carrousel de notices dans les mêmes catégories qu’un article
Liste de notices d’une étagère associée à un article
Dans les commentaires qui suivent l’analyse du cadre «
Notices du même auteur qu’une autre notice
ce mode de sélection n’affichait pas toujours les notices que vous auriez voulu mettre en évidence, et que ce type de problème pouvait aussi se poser pour d’autres cadres dont le contenu est créé de manière dynamique.
Si vous laissez faire les choses sans intervenir, vos lecteurs risquent parfois de voir
des notices fort anciennes ou peu pertinentes – si le choix se fait dans une base bien étoffée
souvent les mêmes notices - si le choix se fait dans une base de taille réduite
S’il s’agit simplement d’offrir quelques suggestions de lecture complémentaire, vous pouvez opter sans souci pour la création dynamique du contenu de l’étagère.
Toutefois, si la pertinence des résultats est à vos yeux le critère essentiel pour certains carrousels ou listes spécifiques,
choisissez vous-même les notices à afficher, via le sélecteur manuel d’une étagère thématique.
Ce que je vous suggère de faire n’est pas une innovation en soi : les étagères thématiques existent déjà dans le portail.
En effet, dans la page du portail qui affiche un article, on voit les
Notices d’une étagère associée à un article
Dans la démo, il s’agit des étagères qui contiennent les nouveautés dans divers rayons, ex. Fiction jeunesse, Fiction adultes …
L’objectif est de remplacer le carrousel de « Notices dans les mêmes catégories qu’un article » par une liste de notices liées à une étagère spécifique. Le but principal est donc de changer le mode de sélection des notices à afficher.
Le fait de remplacer un carrousel par une liste a aussi de l’importance, mais les questions à se poser sont autres :
Faut-il afficher des données relativement détaillées sur la notice ? o
Si la réponse est oui, la liste s’impose (on peut paramétrer les champs à afficher par un template de notice) o Si la réponse est non, si le titre et la vignette suffisent, le carrousel convient mieux
Quel type de présentation est préférable en termes d’ergonomie, d’équilibre graphique de la page et du portail ? o Une liste ? o Un carrousel ? Horizontal, vertical ou en fondu enchaîné ?
A.-M. Cubat PMB – Construction du portail – Concepts et exemples
Source : http://amcubat.be/docpmb/portail-construction-concepts-exemples
Page 160
Il est facile d’éviter l’affichage du carrousel des « Notices dans les mêmes catégories qu’un article ».
Veillez à ce que l’article ne soit lié à aucune catégorie, et le tour est joué !
On ne verra pas le carrousel ...
Il est tout aussi facile d’obtenir une liste des « Notices d’une étagère associée à un article ».
Veillez à ce que le type de contenu de l’article soit « Sélection », et le tour est joué !
Du moins si vous avez associé l’article à une étagère qui contient effectivement des notices !
On verra la liste des notices que vous vouliez afficher, et seulement celles-là.
On n’a jamais dit que le type de contenu « Sélection » était réservé aux articles qui présentent les nouveautés ;-)
Ce que vous voyez dans la démo est une illustration d’une des possibilités, mais il y en a d’autres à explorer …
Exemple concret d’un autre usage du type de contenu « Sélection »
J’ai créé une rubrique « A découvrir » qui contient deux articles thématiques.
Article « Invitation au voyage » - Lié à une étagère homonyme
Premier test
De prime abord, tout semble correct, le cadre « Notices d’une étagère associée à un article » affiche les notices de l’étagère sélectionnée.
Toutefois, il subsiste un petit problème : le titre affiché au-dessus de la liste des notices !
Le titre « Toutes les nouveautés » reflète l’ancienne fonction du cadre, il ne convient donc plus.
Contenu du panier « Voyage » lié à cette étagère
A.-M. Cubat PMB – Construction du portail – Concepts et exemples
Source : http://amcubat.be/docpmb/portail-construction-concepts-exemples
Page 161
Si vous voulez rendre le cadre « Notices d’une étagère associée à un article » vraiment polyvalent, il y a une seule petite modification à faire dans le template Django : changer le titre !
Il faut trouver un titre neutre, utilisable en toute circonstance, aussi bien pour les nouveautés des divers rayons que pour une étagère thématique. Je propose « Quelques suggestions » comme nouveau titre.
Je sais que ce n’est guère original, mais je manquais d’inspiration ;-)
Template Django du cadre « Notices d’une étagère associée à un article »
{% if records %}
Ancienne version
<h3>Toutes les nouveautés</h3>
{% endif %}
{% for record in records %}
<blockquote>{{record.content}}</blockquote>
Nouvelle version
{% if records %}
<h3>Quelques suggestions</h3>
{% endif %}
{% for record in records %}
<blockquote>{{record.content}}</blockquote>
<br />
<hr>
<br />
<hr>
{% endfor %} {% endfor %}
Il suffit d’éditer ce cadre, de remplacer l’ancien titre par un autre de votre choix, et de sauvegarder à nouveau le cadre.
Notices d’une étagère associée à un article
pour comprendre exactement de quoi il s’agit.
Le nouveau titre convient pour une étagère thématique et pour les nouveautés d’un rayon
Je voudrais également montrer que les « coups de cœur des bibliothécaires » ne se limitent pas nécessairement à la présentation d’un livre. Si on emploie un article de type Sélection lié à une étagère, on peut créer aisément un « coup de cœur » pour un auteur, une collection, un thème spécifique, etc.
La démo du portail contient déjà une œuvre de Ray Bradbury, Fahrenheit 451, un magnifique roman de science-fiction qui nous interpelle autant qu’au moment de sa parution initiale (en 1953), que nous soyons bibliothécaires ou non …
Imaginez un monde où la TV règne en maître et où la lecture est devenue interdite, car elle incite les gens à réfléchir ...
Un monde où on dénonce à la police ceux qui ont commis un « acte antisocial » : ils lisent et ont caché quelques livres chez eux …
Un monde où un corps spécial de pompiers a été créé afin de brûler les livres et les maisons des « criminels » qui en possèdent ...
Un monde où quelques individus se réfugient dans les bois et deviennent la « mémoire vivante des livres » : chacun a appris une
œuvre par cœur, afin que celle-ci ne disparaisse jamais …
Etapes préliminaires
J’ai ajouté dans la base une 2 e
œuvre de Ray Bradbury, un recueil de nouvelles : Les pommes d’or du soleil.
J’ai créé une étagère et un panier « Ray Bradbury » qui contiennent ces deux documents
Deux livres, c’est vraiment le strict minimum requis pour illustrer le concept d’une étagère ;-)
A.-M. Cubat PMB – Construction du portail – Concepts et exemples
Source : http://amcubat.be/docpmb/portail-construction-concepts-exemples
Page 162
Article « L’auteur du mois » - Lié à l’étagère « Ray Bradbury »
Contenu du panier « Ray Bradbury » lié à cette étagère
Un « coup de cœur » pour un auteur
Article de type « Sélection » lié à une étagère
Résultat final et conseils
Techniquement, rien n’empêche la présence simultanée des deux cadres suivants dans la même page :
« Notices dans les mêmes catégories qu’un article »
« Notices d’une étagère associée à un article »
Toutefois, il vaut mieux éviter que les deux cadres ne soient activés en même temps, sinon on risque de voir deux fois les mêmes notices.
En effet, vous pourriez « instinctivement » mettre dans l’étagère des notices qui seraient apparues de toute façon dans l’autre cadre, car elles sont liées aux mêmes catégories que l’article.
Pour avoir seulement les notices dans les mêmes catégories qu’un article et
être sûr que l’autre cadre n’apparaîtra pas pour un article précis
Si cet article était par hasard initialement de type Sélection, supprimer d’abord le contenu éventuel du champ personnalisé lié au type précédent d’article (l’étagère). Il faut que l’ancien champ personnalisé ne contienne plus de valeur (choix vide).
Choisir un (nouveau) type de contenu : sûrement pas Sélection !
N’importe quel autre type convient.
Choisir ensuite les catégories adéquates
Pour avoir seulement les notices d’une étagère associée à un article et être sûr
que l’autre cadre n’apparaîtra pas pour un article précis
Si cet article était lié initialement à une ou plusieurs catégories, supprimer d’abord ces liens vers les descripteurs
Si cet article était par hasard initialement d’un autre type que
Sélection, supprimer d’abord le contenu éventuel du champ personnalisé lié au type précédent d’article. Il faut que l’ancien champ personnalisé ne contienne plus de valeur (choix vide).
Choisir un (nouveau) type de contenu : Sélection
Choisir ensuite l’étagère adéquate
Je rappelle que vous ne pouvez effacer le contenu d’un champ personnalisé via l’interface de PMB que si vous avez prévu un choix vide.
A.-M. Cubat PMB – Construction du portail – Concepts et exemples
Source : http://amcubat.be/docpmb/portail-construction-concepts-exemples
Page 163
PAGE DU PORTAIL QUI AFFICHE UN ARTICLE
U
N AUTRE MODE D
’
AFFICHAGE DU CADRE
« N
OTICES DANS LES MÊMES CATÉGORIES QU
’
UN ARTICLE
»
La page qui affiche un article et une liste de notices comprend trois cadres, mais tous ne sont pas nécessairement affichés.
Un cadre issu du module Affichage d’un article
o
Visible en toute circonstance – c’est le cadre principal de cette page
Carrousel de notices dans les mêmes catégories qu’un article – Etagère créée de manière dynamique o
Visible si certaines catégories sont communes à l’article et aux notices - Peu importe le type de contenu de l’article
Liste de notices - Une étagère thématique associée à un article : ex. Nouveautés du rayon Fiction jeunesse o
Visible seulement si l’article est de type Sélection et si l’étagère préalablement choisie contient des notices
Carrousel de notices dans les mêmes catégories qu’un article Liste de notices d’une étagère associée à un article
Le « Carrousel de notices dans les mêmes catégories qu’un article » a été créé sur base du module « Liste de notices », donc 2 vues sont disponibles : un carrousel ou une liste (template Django).
Dans la démo, on a choisi le carrousel, mais on pourrait préférer une liste pour diverses raisons :
Le carrousel ne montre que les vignettes et les titres, tandis qu’avec une liste, on peut afficher davantage de
champs, ce qui permet de comprendre pourquoi telle ou telle notice a été sélectionnée
Le choix des champs à afficher et de leur mode de présentation se gère facilement dans le template de notice associé
à ce cadre (Portail – Liste de notices), on peut par exemple ajouter des champs.
Carrousel de notices dans les mêmes catégories qu’un article
L’objectif est de remplacer ce carrousel de notices dans les mêmes catégories qu’un article par une liste de notices dans les mêmes catégories qu’un article. Il faut donc changer le mode d’affichage et la position du cadre dans la page.
J’ai affiché cette liste de notices « sur le même sujet » de deux manières, afin de faciliter la comparaison et le choix
Bien entendu, en situation réelle, vous ne gardez qu’une seule option pour les notices sur le même sujet : le carrousel ou la liste !!
Techniquement, rien n’empêche la présence simultanée des deux cadres suivants dans la même page :
« Notices dans les mêmes catégories qu’un article »
« Notices d’une étagère associée à un article »
Toutefois, il vaut mieux éviter que les deux cadres ne soient activés en même temps, sinon on risque de voir deux fois les mêmes notices.
Si vous choisissez d’afficher les notices dans les mêmes catégories qu’un article sous forme de liste, il faut prendre toutes les précautions utiles afin que les notices d’une étagère associée à un article ne soient pas visibles.
Sinon vous auriez deux longues listes en partie similaires affichées l’une en-dessous de l’autre, et la page deviendrait « kilométrique » !
A.-M. Cubat PMB – Construction du portail – Concepts et exemples
Source : http://amcubat.be/docpmb/portail-construction-concepts-exemples
Page 164
Première précaution : ne supprimez pas tout de suite le carrousel de notices sur le même sujet qu’un article !
Ni la liste de notices que vous pourriez créer ensuite !
Sûrement pas quand vous êtes en période de test, et même pas après les tests initiaux.
Vous pourriez changer d’avis plus tard, et il faudrait recréer ce cadre !!
Il est simple de masquer en permanence un cadre basé sur le module Liste de notices.
Il suffit d’indiquer la valeur 0 pour le nombre d’éléments
à renvoyer, et ce cadre ne sera jamais affiché.
N.B. Je rappelle que cette astuce ne fonctionne pas pour les cadres basés sur le module Liste d’articles.
Dans ce cas, la valeur zéro signifie : afficher tous les articles !
Je ne vais pas détailler le paramétrage de ce cadre en version « liste », vu qu’il ressemble fort à la version « carrousel ».
Je vais seulement relever quelques différences.
Notices dans les mêmes catégorie qu’un article
Formulaire pour la variante du carrousel de notices dans les mêmes catégories qu’un article – Module « Liste de notices »
Vue en carrousel Vue en liste de notices
Vu que la liste de notices (vue Django) avait été conçue au départ pour les nouveautés des divers rayons, PMB ne propose qu’un seul template
.
Différences entre ces deux formulaires
Il faut paramétrer le carrousel dans ce cas-ci.
On dispose dès le départ d’un template prévu pour les Notices dans les mêmes catégories qu’un article.
Le paramétrage du carrousel a bien sûr disparu.
Il faut changer le titre dans le template, et remplacer « Toutes les nouveautés » par « Quelques suggestions », puisque ce cadre est devenu polyvalent (nouveautés + étagère thématique).
de notices liées à une étagère »
A.-M. Cubat PMB – Construction du portail – Concepts et exemples
Source : http://amcubat.be/docpmb/portail-construction-concepts-exemples
Page 165
Après sauvegarde du cadre « Notices dans les mêmes catégories qu’un article », il apparaît en 2 e
position dans la page qui affiche un article, entre « Afficher un article » et « Liste de notices – Etagère associée à un article ».
Vous pouvez éventuellement le déplacer, afin qu’il soit le dernier de la page.
De toute façon, qu’il soit en 2 e
ou 3 e
position n’a guère d’importance, puisqu’on voit soit le cadre n° 2, soit le cadre n° 3.
Résultat final et conseils
N.B. Je sais que je répète les conseils donnés dans l’analyse de la variante précédente :
un autre usage du cadre « Liste de notices – Etagère associée à un article ».
Mais je ne sais pas si vous lirez ces pages dans l’ordre où elles se présentent.
Je ne suis donc pas sûre que vous ayez déjà lu cet avertissement.
Techniquement, rien n’empêche la présence simultanée des deux
Article de type « Coup de cœur »
Notices dans les mêmes catégories que l’article cadres suivants dans la même page :
« Notices dans les mêmes catégories qu’un article »
Affichage en liste (et non en carrousel)
« Notices d’une étagère associée à un article »
Toutefois, il vaut mieux éviter que les deux cadres ne soient activés en même temps, sinon on risque de voir deux fois les mêmes notices.
En effet, vous pourriez « instinctivement » mettre dans l’étagère des notices qui seraient apparues de toute façon dans l’autre cadre, car elles sont liées aux mêmes catégories que l’article.
Le problème serait encore plus crucial si les 2 cadres affichaient les notices sous forme de liste.
Vous auriez alors 2 longues listes en partie similaires l’une en-dessous de l’autre, et la page deviendrait « kilométrique » !
Pour avoir seulement les notices dans les mêmes catégories qu’un article et
être sûr que l’autre cadre n’apparaîtra pas pour un article précis
Si cet article était par hasard initialement de type Sélection, supprimer d’abord le contenu éventuel du champ personnalisé lié au type précédent d’article (l’étagère). Il faut que l’ancien champ personnalisé ne contienne plus de valeur (choix vide).
Choisir un (nouveau) type de contenu : sûrement pas Sélection !
N’importe quel autre type convient.
Choisir ensuite les catégories adéquates
Pour avoir seulement les notices d’une étagère associée à un article et être sûr
que l’autre cadre n’apparaîtra pas pour un article précis
Si cet article était lié initialement à une ou plusieurs catégories, supprimer d’abord ces liens vers les descripteurs
Si cet article était par hasard initialement d’un autre type que
Sélection, supprimer d’abord le contenu éventuel du champ personnalisé lié au type précédent d’article. Il faut que l’ancien champ personnalisé ne contienne plus de valeur (choix vide).
Choisir un (nouveau) type de contenu : Sélection
Choisir ensuite l’étagère adéquate
Faites des tests comparatifs entre ces divers modes d’affichage dès que possible, évitez de changer trop tard de vue !
Surtout si vous devez modifier le type de contenu de certains articles, et les champs personnalisés qui y sont liés.
Sinon, vous risquez de conserver les traces des valeurs antérieures de ces champs personnalisés « quelque part » dans les tables, et de ne pas obtenir la mise en page souhaitée.
Je rappelle que vous ne pouvez effacer le contenu d’un champ personnalisé via l’interface de PMB que si vous avez prévu un choix
vide. Si le choix vide n’existe pas, il n’y a que 2 manières de supprimer le contenu d’un champ personnalisé :
passer par l’interface de PhpMyAdmin
rédiger une requête SQL spécifique et à usage unique, adaptée au champ personnalisé que vous avez créé
Soyez donc prudent !
A.-M. Cubat PMB – Construction du portail – Concepts et exemples
Source : http://amcubat.be/docpmb/portail-construction-concepts-exemples
Page 166
Liste de sites Web
Le site d’une bibliothèque scolaire ou académique présente souvent des ressources externes en ligne : des références de base (encyclopédies, dictionnaires généraux ou spécifiques), des sites bibliographiques, des aides méthodologiques, etc.
Le portail permet d’afficher ces ressources autrement que sous la forme d’une « simple liste ».
Divers modes de présentation sont possibles, en fonction du nombre de sites à cataloguer, de leur importance, et de leur préexistence éventuelle dans la base (sous forme de notices – type « document électronique »).
Puisqu’il s’agit de ressources externes à la bibliothèque, il vaut mieux (en termes d’ergonomie) que ces sites s’ouvrent dans un autre onglet du navigateur.
Hypothèse n° 1 : un article du portail contient un ou plusieurs liens vers des documents externes
S’il s’agit de liens occasionnels, sans connexion directe avec votre institution ou avec les spécificités de votre bibliothèque, ces sites ne seront probablement pas catalogués : employez donc l’éditeur HTML pour gérer ces URL.
Rappel – Mode d’emploi de l’éditeur html intégré au portail
Comment insérer ou supprimer un lien et spécifier si l’URL doit s’ouvrir dans un autre onglet du navigateur
Sélectionner un ou plusieurs mots - Cliquer sur l’icône « Lien »
Saisir l’URL de destination et une brève description
Choisir la cible :
Fenêtre actuelle pour un lien vers une page de votre portail
Nouvelle fenêtre pour un lien vers un autre site (le lien s’ouvrira ainsi dans un autre onglet du navigateur)
Cliquer sur « Définir » pour créer et enregistrer ce lien.
Pour supprimer un lien URL : positionner le curseur quelque part dans le texte sélectionné, et cliquer sur l’icône à droite de « Lien »
Arborescence
Prévoir un lien qui s’ouvrira dans un nouvel onglet
Le lien est cliquable
Le site s’ouvre en effet dans un nouvel onglet
Cet article comprend 4 liens
Un lien vers la section Tutoriels
3 liens vers des tutoriels CSS
A.-M. Cubat PMB – Construction du portail – Concepts et exemples
Source : http://amcubat.be/docpmb/portail-construction-concepts-exemples
Page 167
Hypothèse n° 2 : un article du portail décrit un site externe de manière relativement détaillée
Si vous proposez déjà une liste assez longue de sites dans votre catalogue (par exemple dans les infopages ou via les catégories), vous n’aurez sûrement pas le temps de créer un article par site ! En outre, cela ne se justifierait probablement pas pour un certain nombre de sites moins intéressants. Dernier obstacle : cela créerait un nombre anormalement élevé d’articles et de rubriques (pour les classer), et cela alourdirait donc la gestion du contenu éditorial.
Toutefois, certains sites de ressources méritent d’être mis à l’honneur ! Autant leur consacrer un article …
Puisqu’il s’agit de ressources externes à la bibliothèque, il vaut mieux que ces sites s’ouvrent dans un autre onglet du navigateur : c’est pourquoi il faut créer un nouveau type de contenu pour les articles.
Ce nouveau type de contenu (appelé « Lien ») relie un article et l’URL d’une page Web, et permet aussi de choisir si cette autre page s’ouvrira dans un autre onglet du navigateur ou non. 2 champs personnalisés sont dès lors nécessaires.
Type de contenu : lien
Cliquer sur « Options » pour paramétrer le type de saisie.
1 er
champ personnalisé : URL
Type de données
Le type de saisie « texte » signifie « caractères saisis au clavier ».
Plusieurs types de données sont donc possibles.
Ne pas oublier d’enregistrer ensuite !
Le type de données « texte » peut contenir tout type de caractère : lettres, chiffres ou divers symboles
(mathématiques, de ponctuation)
Type de contenu : lien
Cliquer sur « Options » pour paramétrer le type de saisie.
2 e
champ personnalisé : ouvrir dans un nouvel onglet
Type de données
Le type de saisie « liste de choix » se base sur une liste préétablie.
Chaque choix possible (ici, « oui ou non ») correspond à une valeur
(ici, « 1 ou 2 »). Plusieurs types de données sont donc possibles.
Le type de données est un « entier » car le type correspond à la valeur choisie : des nombres (1,2). Mais on aurait aussi pu choisir le type « texte » pour enregistrer ces nombres.
Si on avait choisi des lettres (« o » ou « n »), le type aurait été texte.
A.-M. Cubat PMB – Construction du portail – Concepts et exemples
Source : http://amcubat.be/docpmb/portail-construction-concepts-exemples
Page 168
Article « British Council - BBC »
Arborescence Rubrique « Anglais » Article « Birtish Council – BBC »
Point de départ
Menu principal
Clic sur Anglais
(id_rubrique = 25)
On va vers la page qui affiche
une rubrique
Page une rubrique
(pageid = 6)
Clic sur un article
(British Council)
(id_article = 36)
On va vers la page qui affiche
un article
Page un article
(pageid = 4)
Type de contenu :
Lien URL
Article : type de contenu = Lien URL
http://...&pageid=6&id_rubrique=25 http://...&pageid=4&id_article=36
On peut ouvrir le lien dans un nouvel onglet
C’est un beau schéma théorique de navigation ;-)
Mais au stade actuel, rien ne se passe dès qu’on arrive dans la page qui affiche un article …
Certes, on a prévu un nouveau type de contenu, mais vu que le template Django n’en tient pas encore compte, il est impossible de quitter le portail.
Aucun élément (logo ou titre) n’est cliquable, et la variable qui contient l’URL de destination ne sert provisoirement à rien.
Il faut adapter le template Django du cadre « Afficher un article ».
Sinon, le site du British Council resterait inaccessible !!
A.-M. Cubat PMB – Construction du portail – Concepts et exemples
Source : http://amcubat.be/docpmb/portail-construction-concepts-exemples
Page 169
détaillée. En effet, la seule chose qui change, c’est le template Django.
Ancienne version
<h3>
S’il s’agit d’un événement sur une période précise
{% if fields_type.date_debut.values.0.value %}
{% if fields_type.date_fin.values.0.value %}
Du {{fields_type.date_debut.values.0.format_value}}
au {{fields_type.date_fin.values.0.format_value}} :
{% else %}
Le {{fields_type.date_debut.values.0.format_value}} :
{% endif %}
{% endif%}
S’il s’agit d’un événement à une date précise
{% if fields_type.date.values.0.value %}
Le {{fields_type.date.values.0.format_value}} :
{% endif%}
Quel que soit le type de contenu de l’article
{{title}}
</h3>
<img style="float:left;margin-right:5px;max-height:200px;maxwidth:200px;" src='{{logo.large}}' />
<p>{{resume}}</p>
<br />
<div class="row">{{content}}</div>
<br />
S’il s’agit d’un article « Coup de cœur » (lié à une notice)
{% if fields_type.identifiant_notice.values.0.value %}
<a href="./index.php?lvl=notice_display&id=
{{fields_type.identifiant_notice.values.0.value}}">
Voir le document dans le catalogue
</a>
{% endif%}
Template Django – Afficher le contenu d’un article
Nouvelle version
<h3>
S’il s’agit d’un événement sur une période précise
{% if fields_type.date_debut.values.0.value %}
% if fields_type.date_fin.values.0.value %}
Du {{fields_type.date_debut.values.0.format_value}}
au {{fields_type.date_fin.values.0.format_value}} :
{% else %}
Le {{fields_type.date_debut.values.0.format_value}} :
{% endif %}
{% endif%}
S’il s’agit d’un événement à une date précise
{% if fields_type.date.values.0.value %}
Le {{fields_type.date.values.0.format_value}} :
{% endif%}
Si le champ URL a une valeur (type de contenu = lien URL)
{% if fields_type.url.values.0.value %}
<a href="{{fields_type.url.values.0.value}}"
{% if fields_type.nouvel_onglet.values.0.value==1 %}
target="_blank"
{% endif %}>
{{title}}</a>
{% else %}
{{title}}
{% endif %}
Quel que soit le type de contenu de l’article
</h3>
<img style="float:left;margin-right:5px;max-height:200px;max-width:200px;" src='{{logo.large}}' />
<p>{{resume}}</p>
<br />
<div class="row">{{content}}</div>
<br />
S’il s’agit d’un article « Coup de cœur » (lié à une notice)
{% if fields_type.identifiant_notice.values.0.value %}
<a href="./index.php?lvl=notice_display&id=
{{fields_type.identifiant_notice.values.0.value}}">
Voir le document dans le catalogue
</a>
{% endif%}
A.-M. Cubat PMB – Construction du portail – Concepts et exemples
Source : http://amcubat.be/docpmb/portail-construction-concepts-exemples
Page 170
Template Django – Afficher le contenu d’un article – Nouvelle version
<h3>
S’il s’agit d’un événement sur une période précise
{% if fields_type.date_debut.values.0.value %}
% if fields_type.date_fin.values.0.value %}
Du {{fields_type.date_debut.values.0.format_value}}
au {{fields_type.date_fin.values.0.format_value}} :
{% else %}
Le {{fields_type.date_debut.values.0.format_value}} :
{% endif %}
{% endif%}
S’il s’agit d’un événement à une date précise
{% if fields_type.date.values.0.value %}
Le {{fields_type.date.values.0.format_value}} :
{% endif%}
Si le type de contenu est un lien URL
{% if fields_type.url.values.0.value %}
<a href="{{fields_type.url.values.0.value}}"
{% if fields_type.nouvel_onglet.values.0.value==1 %}
target="_blank"
{% endif %}>
{{title}}</a>
{% else %}
{{title}}
{% endif %}
Quel que soit le type de contenu de l’article
</h3>
<img style="float:left;margin-right:5px;max-height:200px;max-width:200px;" src='{{logo.large}}' />
<p>{{resume}}</p><br />
<div class="row">{{content}}</div>
<br />
S’il s’agit d’un article « Coup de cœur » (lié à une notice)
{% if fields_type.identifiant_notice.values.0.value %}
<a href="./index.php?lvl=notice_display&id=
{{fields_type.identifiant_notice.values.0.value}}">
Voir le document dans le catalogue
</a>
{% endif%}
S’il s’agit d’un événement sur une période précise
Début de la 1
e
condition
Si
le champ date_debut
a une valeur
{% if fields_type.date_debut.values.0.value %}
Début de la 2
e
condition
Si le champ date_fin a une valeur
{% if fields_type.date_fin.values.0.value %}
On affiche : Du {{date_debut}} au {{date_fin}}
Sinon {% else %} (s’il n’y a pas de date de fin)
On affiche : Le {{date_debut}}
S’il n’y a pas de date de fin, on considère que l’événement a lieu
à une date précise (celle du début), et on modifie le message
Fin de la 2
e
condition {% endif%}
Fin de la 1
e
condition {% endif%}
S’il s’agit d’un événement à une date précise
Début de la condition
Si le champ date a une valeur
{% if fields_type.date.values.0.value %}
On affiche : Le {{date}}
Fin de la condition {% endif%}
Si le type de contenu est un lien URL
Faute de place, voir explications détaillées page suivante !
Quel que soit le type de contenu de l’article, on affiche
le logo de l’article <img style="… " src='{{logo.large}}' />
le résumé de l’article {{resume}} (le chapeau)
le contenu de l’article {{content}} (le texte complet)
S’il s’agit d’un article « Coup de cœur » (lié à une notice)
Début de la condition
Si le champ identifiant_notice a une valeur
{% if fields_type.identifiant_notice.values.0.value %}
On génère une balise <a href=" …">
Le 1 er
élément est l’URL de destination (une adresse OPAC)
Le 2e élément est la source = ce qui est cliquable
Fin de la condition {% endif%}
Avant tout, une petite leçon – ou une petite révision ? – de HTML ! Comment ouvrir une URL dans un nouvel onglet ?
Comment rendre un texte cliquable et ouvrir l’URL de destination dans un autre onglet du navigateur ?
<a href="… : URL de destination
Texte entre <a> et </a> : source, d’où on part : on clique sur le texte
Dans la partie qui contient l’URL de destination, ajouter l’instruction target="_blank"
<a href="http://amcubat.be/docpmb">Site de Anne-Marie Cubat</a> devient
<a href="http://amcubat.be/docpmb" target="_blank">Site de Anne-Marie Cubat</a>
Comment rendre une image cliquable et ouvrir l’URL de destination dans un autre onglet du navigateur ?
<a href="… : URL de destination
<img src="… : source, d’où on part : on clique sur l’image
Dans la partie qui contient l’URL de destination, ajouter l’instruction target="_blank"
<a href="http://www.sigb.net"><img src=" http://127.0.0.1/pmb/opac_css/images/site/pmb.png" alt="PMB" /></a> devient
<a href="http://www.sigb.net" target="_blank"><img src=" http://127.0.0.1/pmb/opac_css/images/site/pmb.png" alt="PMB" /></a>
A.-M. Cubat PMB – Construction du portail – Concepts et exemples
Source : http://amcubat.be/docpmb/portail-construction-concepts-exemples
Page 171
{% if fields_type.url.values.0.value %}
<a href="{{fields_type.url.values.0.value}}"
{% if fields_type.nouvel_onglet.values.0.value==1 %}
target="_blank"
{% endif %}>
{{title}} </a>
{% else %}
{{title}}
{% endif %}
Par convention, dans les templates Django :
On emploie un double signe = pour vérifier si 2 valeurs sont égales.
{% if fields_type.nouvel_onglet.values.0.value==1 %}
On emploie les signes != pour vérifier si 2 valeurs sont différentes.
{% if fields_type.nouvel_onglet.values.0.value !=1 %}
Template Django – Afficher le contenu d’un article – Lien URL
Début de la 1 e
condition
Si le champ URL a une valeur {% if fields_type.date.values.0.value %}
On génère une balise <a href="…"
URL de destination = le contenu de la variable {{fields_type.url.values.0.value}}
Début de la 2 e
condition
Si le champ nouvel_onglet a la valeur 1
{% if fields_type.nouvel_onglet.values.0.value==1 %}
On ajoute target="_blank" à l’intérieur de la balise
Fin de la 2 e
condition {% endif%}
On ajoute > pour fermer la balise <a href=" …">
Ce symbole > doit se trouver en-dehors de la 2 e
condition
En effet, il faut fermer cette balise, peu importe la valeur du champ nouvel_onglet
On affiche le titre, qui sera donc cliquable dans ce cas-ci
En effet, la balise </a> qui suit ce titre marque la fin de ce qui est cliquable
Sinon = Si le champ URL n’a pas de valeur
= Si l’article a un autre type de contenu ou si on a oublié de compléter ce champ
On affiche le titre, qui ne sera donc pas cliquable
car il est externe à la balise <a href=" …">
Fin de la 1 e
condition {% endif%}
Hypothèse n° 3 : ces sites externes sont déjà catalogués dans votre base
Il faut trouver un système pratique pour regrouper ces notices et les présenter de manière structurée.
Choisissez des méthodes aussi peu chronophages que possible !
Solution n° 1 :
regrouper ces notices de sites Web dans un certain nombre d’étagères virtuelles
lier chaque étagère à un article de type sélection qui présente ce sous-ensemble de sites
Vous avez déjà dans le portail de PMB tous les éléments dont vous avez besoin pour mettre cette solution en œuvre, et en
Tenez quand même compte des aspects suivants
s’il y beaucoup de sites catalogués dans votre base, cela peut augmenter le nombre d’articles, de rubriques et d’étagères
il faudra vérifier de temps en temps le contenu des étagères virtuelles, ajouter des notices dans les paniers ou en supprimer
Solution n° 2 :
prévoir des catégories bien structurées, et lier ces notices de sites Web aux « bons » descripteurs
prévoir pour chaque sous-ensemble de sites un article de présentation (n’importe quel type de contenu sauf sélection !)
lier chaque article aux « bonnes » catégories, afin que la liste affichée corresponde à vos critères de sélection
Vous avez déjà dans le portail de PMB tous les éléments dont vous avez besoin pour mettre cette solution en œuvre, et en
Tenez quand même compte des aspects suivants
s’il y beaucoup de sites catalogués dans votre base, et/ou des sites dans des domaines fort diversifiés, cela peut augmenter le nombre d’articles et de catégories
il faudra vérifier de temps en temps les liens vers les descripteurs, ajouter ou supprimer des catégories
Il n’y a pas de panacée, pas de solution-miracle unique, valable en toute circonstance !
Il y a de grandes chances que vous soyez confronté aux 3 hypothèses que j’ai évoquées, et vous allez probablement combiner les diverses solutions suggérées ici, et même en trouver d’autres ;-)
A.-M. Cubat PMB – Construction du portail – Concepts et exemples
Source : http://amcubat.be/docpmb/portail-construction-concepts-exemples
Page 172
Adaptation du template de notices (onglet Editions)
le template de notice qui gère l’affichage.
Il faut compléter ce template afin qu’il affiche correctement les documents électroniques.
Editions > Templates de notices
Template adapté pour les sites Web (documents électroniques)
<table border="0" cellpadding="1" cellspacing="5">
<tbody>
<tr>
<td style="width:110px;text-align:center;">
<a href="#url();">#if(#img_url();,<img src="#img_url();" style="width:100px;" />,<img src="./styles/pmb4/images/no_image.jpg" style="width:100px;" />);</a>
</td>
<td style="text-align:left;">
<a href="#url();"><font size=3>#title();#a_empty(#complement_title();, :
);</font></a>
#str_replace( , ,#a_empty(#authors_by_type_with_tpl(1,3,\, ,\,
,0,0,70\,71\,72,{rejete} {name});,<br />de ););
#a_empty(#resume();,<br /><br />);
</td>
</tbody>
</table>
</tr>
Ce chapitre consacré aux sites Web se termine de manière impromptue, et j’en suis consciente.
J’aurais voulu ajouter ici quelques exemples, afin d’illustrer ces diverses options. Les exemples sont déjà conçus dans ma base de test, mais j’en suis à peu près au stade zéro en ce qui concerne les captures d’écran et les explications.
La situation est analogue pour le chapitre suivant, le menu créé dans l’interface d’administration : c’est un brouillon impubliable, dans l’état actuel des choses.
Un peu de patience, cela viendra bientôt … et merci de votre compréhension ;-)
Menu créé dans l’interface d’administration

Link público atualizado
O link público para o seu chat foi atualizado.