mediabox et spip4

Bonjour

J’ai un souci avec mediabox :
Sur un spip 3.2, pas de souci
http://escal.ac-lyon.fr/spip/spip.php?article156
Mais sur un spip4 avec les même réglages, chez le même hébergeur, pas de
mediabox au clic sur l’image
http://escal.ac-lyon.fr/spip4test/spip.php?article156

Une idée ?

JC

le plugin jquery peut être ?

Merci de ta réponse mais le plugin JQuery UI est bien activé sur le site en spip4.

dans votre 3.2 le squelette doc a du être modifié ou dans la config mediabox le déclencheur ajouté

dans spip 4 il n’y plus que <docxx|center> et pas de popup

Ah ? Plus de popup sur les images avec spip4 ? Tu es sure ?

Je comprends bien que les raccourcis img, emb ne devraient plud fonctionner en spip4 mais j’attendais que le raccourci doc fonctionne de la même façon qu’en spip3 et qu’au clic sur une image, le popup de la mediabox s’ouvre.

Et oui, pour le lien j’ai mis un article au pif, c’est juste un test de lien.

Pour la mise en page c’est normal si tu mets tes docs en « left ».
Mets-les en « center » ce sera mieux.
Par contre tu as 2 images qui ouvrent la mediabox ?

Bon, j’ai créé un nouveau site avec 0 plugins et 1 seul article avec 4 images … et pas de mediabox au clic sur les images.
http://escal.ac-lyon.fr/spip4test2/spip.php?article1

Ton test est visible en ligne ?

C’est un truc de fou, ça !
Au secours les dev !

Tu peux donner le code généré pour les images ?

Merci pour cet extrait.
Donc tu as bien des href qui sont générés sur certaines images avec un class « mediabox » et pas d’autres.
Mystère !

Je pense que c’est la taille de l’image en question qui pose problème. Si l’image source fait moins de 800 pixels de côté, alors le lien vers la source n’est pas généré, et la mediabox n’a tout bonnement rien à afficher.

Bien vu !!
Voilà le mystère résolu. Bravo et merci !

Tout dépend du squelette utilisé.
En plus on peut forcer la largeur d’affichage pour chaque image.

Le choix de ne proposer un affichage plein écran que lorsqu’on dispose d’une image suffisamment grande a d’autant plus de sens aujourd’hui où les tailles d’écrans et densité de pixels sont, en moyenne, supérieures.

@anon73367629
Pour le reste des nouveautés v4, les devs ont pris le soin d’offrir des options de rétro-compatibilité autant que faire se peut :
define('_COMPORTEMENT_HISTORIQUE_PORTFOLIO', true); // permet de réactiver la gestion de portfolio et des modèles différenciés <imgXX|> vs <docXX|>

Et pour la mediabox, la lib historique colorbox a été portée en plugin à part.

Bon, je mets un petit message ici au cas où ça pourrait aider parce que j’ai aussi été victime de cette régression en passant de SPIP 3.2 à SPIP 4.0, et j’ai bien galéré pour trouver la solution (qui en fait est très simple, mais il faut la trouver !!!).

J’ai mes propres squelettes et je n’utilise pas la notion de portfolio qui m’a toujours paru bizarre.
Je gère des documents (images) rattachés à un article.
Mon squelette les regroupe toutes à un endroit pour un accès à une galerie complète (je réalise que ca doit correspondre à cette notion de portfolio), et par ailleurs les rédacteurs choisissent certaines illustrations qu’ils placent au sein de l’article avec les inclusions du type « <doc3731|left> ».

Le résultat fonctionnel en SPIP 3.2 (à ce jour) est visible ici par exemple :
http://www.etherreal.com/spip.php?article6524

Lors de la migration vers SPIP 4.0, la galerie fonctionne (normal, c’est moi qui génère le code avec mon squelette) mais toutes les images qui illustrent l’article ne sont plus cliquables, et là par contre tout est géré dans la balise #TEXTE. :grimacing:

  • j’ai d’abord cherché s’il y avait moyen d’injecter du code via des filtres sur la balise #TEXTE

  • je me suis même demandé s’il ne fallait pas que je me crée mon propre modèle de #TEXTE

  • j’ai essayé de modifier le modèle images.html pour ne pas être contraint aux images de 800px ce qui permet de cliquer sur les vignette mais l’affichage est en vrac

  • j’ai tenté le define(’_COMPORTEMENT_HISTORIQUE_PORTFOLIO’, true); qui ne fait que supprimer toute interprétation des inclusions du type « <doc3731|left> »

Et donc finalement la solution consiste uniquement à installer le plugin « Modèle de Document SPIP 3.2 » :
https://plugins.spip.net/historique_spip32_documents.html?compatible_spip=*

Bon, d’un côté je suis content parce que ca fonctionne, mais d’un autre côté je râle parce que :

  • c’est un plugin supplémentaire
  • je considère que c’est une rustine pour gérer la rétro-compatibilité, et on connait tous les limites des rustines…

Bref, bon courage !!

Le plugin dépanne pendant la période de transition, mais il vaut mieux ne pas trop se reposer dessus sur le long terme amha.

Si j’ai bien compris, tu souhaites que toutes les images insérées dans le texte avec <docX> ou autre soient cliquables afin d’être prises en compte dans la galerie de la médiabox ?

Par défaut seules les images d’une largeur supérieure à 800px sont cliquables, c’est la valeur choisie arbitrairement par défaut.
Tu peux baisser ce seuil dans ton fichier d’options :

define('_IMAGE_TAILLE_MINI_AUTOLIEN', 200);

Cela dit c’est pas la 1ère fois que je vois cette question, c’est vrai que c’est un peu caché tout ça, ça pourrait être une option de config plutôt qu’une constante.


Edit : c’est en réponse à @Fabrice_AL, j’avais zappé tout le fil précédent :slight_smile:

C’est exactement ça !

Ah merci, je vais tester, mais je n’y crois pas trop, je me trompe peut-être mais j’imagine que ca a un effet similaire au fait de modifier cette ligne dans le modèle image.html du plugin « medias »:
[(#SET{autolien,#LARGEUR|>={800}|ou{#HAUTEUR|>={800}}|oui})]
J’ai déjà testé ça, ca active bien les liens, mais l’affichage est bancal.

Ah une option de config ca serait pas mal effectivement.
Mais comme d’autres je ne comprends pas du tout pourquoi avoir opté pour ce qui est une limitation.

J’ai beau avoir fait mes propres squelettes, je ne pense pas être un cas isolé en réduisant la taille des images au sein des articles. Ah ben d’ailleurs je viens de vérifier, et même dans la dist c’est le cas, par exemple dans article.html :
(#TEXTE|image_reduire{672,*})

Et d’un point de vue utilisateur, il me semble assez logique de proposer le clic des images dans l’article, au moment de la lecture, plutôt que déporté dans un portfolio/une galerie qui sera consulté après lecture.

Bon, bilan des tests :

  • J’ai réalisé que l’affichage bancal auquel je faisais allusion était du à une autre de mes modifications sur le paramétrage de Mediabox, j’avais tenté de forcer son déclenchement sur l’enchainement des balises HTML « figure img » ce qui fonctionnait mais m’ouvrait la mediabox avec l’image en petite taille.

  • donc au final la modification de la ligne suivante fonctionne. Petite particularité, ca ne m’ouvre que l’image cliquée, alors qu’en SPIP 3.2.x ca m’ouvrait une galerie avec l’ensemble des images intégrées à l’article. C’est un détail, mais du coup le plugin « Modèle de Document SPIP 3.2 » en reprend strictement le fonctionnement.
    [(#SET{autolien,#LARGEUR|>={800}|ou{#HAUTEUR|>={800}}|oui})]

  • Enfin, et le plus intéressant/propre, cette variable _IMAGE_TAILLE_MINI_AUTOLIEN.
    J’ai testé et ça ne fonctionne pas chez moi. J’ai donc cherché à comprendre

    Parce qu’on a convenu (enfin le plugin d’arno dont on s’est aussi inspiré) que personne ne voulait avoir des vignettes de 150px (ou whatever) dans son site. Avoir des vignettes est une pratique héritée de l’époque ou on navigait sur internet avec des modems 56K.

    • Apparemment cette variable a été intégrée dans le plugin Medias dans sa version 4.0.3. Mais étant en SPIP 4.0.8, j’ai actuellement la version 3.2.6 du plugin Medias. Du coup je pense qu’il est normal qu’elle ne fonctionne pas chez moi pour l’instant.

Mais du coup, je pense que je vais me contenter du plugin « Modèle de Documents SPIP 3.2 » pour l’instant, et quand je passerai en SPIP 4.1.x j’utiliserai cette variable.

Complément/précision : cette variable _IMAGE_TAILLE_MINI_AUTOLIEN a fait son apparition dans SPIP 4.1.1

La constante est désormais documentée : https://www.spip.net/6716

1 « J'aime »