Je trouve un peu dommage d’encombrer l’écran de métadonnées qui n’intéressent qu’un petit nombre de visiteurs, alors qu’elles peuvent être affichées à la demande, au simple survol d’un bouton. Comme ici, par exemple :

La solution proposée utilise les données fournies par l’extension Advanced Metadata et requiert :
- un template-extension, pour déplacer l’affichage des métadonnées à proximité du bouton
- et un peu de CSS, pour cacher / révéler / mettre en forme ces données.
1. Création du template-extension
L’affichage de la page image étant pilotée par le fichier picture.tpl, commencez par créer un template-extension basé sur ce fichier à l’aide du plugin Local Files Editor :

Repérez les lignes correspondant au bouton d’affichage des métadonnées dans la barre d’outil, matérialisées en jaune ci-dessous ; dans mon fichier, elles occupent les lignes 44 à 46.

Ces lignes vont être modifiées pour :
- changer le comportement au survol du bouton (en standard, le visiteur doit cliquer sur le bouton pour afficher les métadonnées)
- incorporer l’affichage du tableau de métadonnées, qui se trouve normalement sous l’image.
Remplacez d’abord <a href="{$U_METADATA}" par <a href="#" id="show_metadata", ce qui permettra :
- de ne pas changer de page en cas de clic sur le bouton :
href="#" - d’identifier précisément le bouton d’affichage des métadonnées, pour pouvoir y faire référence dans la feuille de style :
id="show_metadata".
Cherchez ensuite les lignes correspondant à l’affichage des métadonnées, qui se trouvent beaucoup plus bas. Chez moi, il s’agit des lignes 251 à 265.

Coupez ces lignes, en commençant par {if isset($metadata)} et terminant par {/if}, et collez-les dans le code de définition du bouton, juste après <img ... alt="metadata">. Puis modifiez le code se trouvant entre les balises <tr> et </tr> de manière à obtenir :
<td colspan="2"><span class="label">{$label} : </span><span class="value">{$value}</span></td>
Au final, vous devriez obtenir ceci :

les zones surlignées en vert correspondant à ce qui a été effectivement modifié.
Sauvegardez le fichier, puis rendez-vous à Configuration -> Templates (modèles) pour activer votre nouveau template-extension ; en face du nom de votre fichier, sélectionnez picture.tpl puis validez.

La structure de base est en place, mais il manque encore les règles CSS qui vont permettre d’afficher ou non les métadonnées en fonction de la position du curseur.
2. Ajout des règles CSS
Utilisez une nouvelle fois Local Files Editor en sélectionnant cette fois l’onglet CSS. Choisissez le fichier rules.css pour activer les règles sur tous les thèmes de la galerie.

Et ajoutez les lignes suivantes :
#show_metadata #Metadata {
position: absolute;
width:160px;
text-align:left;
border: 2px solid #ffffff;
color:#ffffff;
font-size:0.95em;
display: none;
}
#show_metadata:hover #Metadata {
display: block;
cursor: default;
}
où :
#show_metadata #Metadata{ ... }identifie le tableau de métadonnées, et#show_metadata:hover #Metadata{ ... }son état particulier lors du survol du boutonposition: absolute;permet d’afficher les métadonnées « en dehors du flux », c’est-à-dire qu’elles viendront se superposer à ce qui est déjà affiché1width: 160px; détermine la largeur du tableau des métadonnéestext-align: left;aligne à gauche le contenu du tableauborder: 2px solid #ffffff;entoure le tableau d’un bordure pleine, blanche, de 2 pixels d’épaisseurcolor: #ffffff;force à blanc la couleur du texte2font-size: 0.95em;réduit un peu la taille du textedisplay: none;supprime totalement l’affichage du tableau lorsque le bouton n’est pas survolédisplay: block;réactive l’affichage du tableau au survol du boutoncursor: default; restaure le curseur au survol du bouton, pour ne pas inciter à cliquer sur le lien.
N’oubliez pas d’enregistrer votre fichier .css avant d’aller vérifier le résultat. Et pour voir un exemple « life », je vous invite à consulter ma galerie de test ou une réalisation un peu différente sur cette autre galerie.

Bonjour tosca,
Est-ce que le plugin Look_like_Gbo 2 n’est pas à essayer pour obtenir cet effet ? (c’est moins « personnalisé » que cette solution, mais on arrive plus rapidement au résultat)
http://piwigo.org/ext/extension_view.php?eid=251
Une alternative ne nuit pas. Les webmasters choisiront selon leur préférence : le « prêt à l’emploi », ou l’occasion de découvrir un peu mieux le fonctionnement de leur galerie et de s’impliquer dans sa personnalisation.
Personnellement, si je peux me passer de javascript, et d’installer un plugin de plus dont je ne suis pas sûre de maîtriser les possibles interférences, je n’hésite pas.
Le webmaster à la demande de qui j’ai cherché cette solution n’a pas hésité, lui non plus.
En effet, les interactions de LLGBO2 sont assez nombreuses avec d’autres plugins, avec des petits soucis dont je ne me débarrassais pas. La méthode de Tosca m’a permis de me débarrasser d’eux tout en obtenant ce qui qui me plaisait dans LLGBO. Mais sans Tosca, je n’aurais pas pu le faire
Merci pour ton témoignage.
J’avais découvert cette astuce CSS depuis un bon moment déjà, et l’ai d’ailleurs abondamment utilisé sur l’un de mes sites. Je n’ai pas eu à chercher longtemps lorsque tu m’as posé le problème.
Bonsoir Tosca,
J’ai essayé d’appliquer ton ‘truc’ pour mon site, mais sans succès. Ce que je veux faire :
Afficher dans le « perso footer » un message de copyright simple (et le centrer et ça non plus je n’y arrive pas) et lors du survol afficher un petit popup avec un message de Copyright plus développé. Celui qui est sur le site, juste sous la photo de la page d’accueil.
Est-ce que tu penses que c’est possible ?
Merci d’avance,
JPV
Je constate que ta galerie est hébergée sur piwigo.com ; elle ne dispose donc pas de toutes les possibilités de personnalisation offertes par une installation autonome de Piwigo, avec hébergement personnel.
Je t’invite à contacter l’équipe de support piwigo.com pour savoir si ce que tu souhaites faire est possible dans ce contexte.
Effectivement, j’ai constaté que je ne dispose pas de toutes les fonctionnalités. Par exemple, avec le plugin localfiles editor, je n’ai accès qu’à l’onglet « css ».
Merci pour ta réponse, je vais les contacter.
JP