•  » Styles
  •  » Code pour appeler l'URL de l'mage dans template custom image.tpl

#1 2017-03-03 07:30:11

titounet
Membre
Mauvezin, Gers
2010-06-07
49

Code pour appeler l'URL de l'mage dans template custom image.tpl

Bonjour/Bonsoir,

Je suis en train de customiser un template image.tpl
Pour récupérer le titre de la page pas de problème, j'utilise la véritable {$current.TITLE}
Pareil pour la description de l'image, j'utilise la variable {$COMMENT_IMG}

Par contre après pleins de recherche et test, je recherche désespérément un moyen pour faire quelque chose en principe très simple : récupérer aussi l'URL du fichier image (l'URL du fichier original ou une version d'une autre taille comme l'image en XL par exemple...).

Si quelqu'un peut m'aider, merci d'avance !


Version de Piwigo: 2.9.0
PHP: 7.0.15 et MySQL: 5.5.55
Thème Piwigo : Modus
URL Piwigo: https://www.beouetsavic.fr

Hors ligne

#2 2017-03-03 09:59:50

flop25
Équipe Piwigo
2006-07-06
6382

Re: Code pour appeler l'URL de l'mage dans template custom image.tpl

Hors ligne

#3 2017-03-03 12:11:07

titounet
Membre
Mauvezin, Gers
2010-06-07
49

Re: Code pour appeler l'URL de l'mage dans template custom image.tpl

Bonjour @flop25,

Merci beaucoup pour la réponse rapide.

J'avais essayé avec {$ELEMENT_CONTENT} mais ça ne me renvoie pas l'URL de l'image, mais du code HTML,, avec notamment un mappage de l'image sas doute généré par le plugin Fotorama :

Code:

<img src="_data/i/upload/2016/05/19/20160519221053-386d7be0-me.jpg" width="800" height="600" itemprop=contentURL alt="image.jpeg" id="theMainImage" usemap="#mapmedium" title="image - image.jpeg">

<map name="mapsmall"><area shape=rect coords="0,0,160,480" href="picture.php?/12742/category/beouets" title="Précédente : 2016-05-16 beouets goomi 3300" alt="2016-05-16 beouets goomi 3300"><area shape=rect coords="160,0,477,120" href="index.php?/category/beouets" title="Miniatures" alt="Miniatures"><area shape=rect coords="481,0,640,480" href="picture.php?/12741/category/beouets" title="Suivante : 2016-05-16 beouets goomi 3299" alt="2016-05-16 beouets goomi 3299"></map><map name="mapmedium"><area shape=rect coords="0,0,200,600" href="picture.php?/12742/category/beouets" title="Précédente : 2016-05-16 beouets goomi 3300" alt="2016-05-16 beouets goomi 3300"><area shape=rect coords="200,0,597,150" href="index.php?/category/beouets" title="Miniatures" alt="Miniatures"><area shape=rect coords="601,0,800,600" href="picture.php?/12741/category/beouets" title="Suivante : 2016-05-16 beouets goomi 3299" alt="2016-05-16 beouets goomi 3299"></map><map name="mapxlarge"><area shape=rect coords="0,0,306,918" href="picture.php?/12742/category/beouets" title="Précédente : 2016-05-16 beouets goomi 3300" alt="2016-05-16 beouets goomi 3300"><area shape=rect coords="306,0,913,229" href="index.php?/category/beouets" title="Miniatures" alt="Miniatures"><area shape=rect coords="920,0,1224,918" href="picture.php?/12741/category/beouets" title="Suivante : 2016-05-16 beouets goomi 3299" alt="2016-05-16 beouets goomi 3299"></map><map name="mapxxlarge"><area shape=rect coords="0,0,414,1242" href="picture.php?/12742/category/beouets" title="Précédente : 2016-05-16 beouets goomi 3300" alt="2016-05-16 beouets goomi 3300"><area shape=rect coords="414,0,1235,310" href="index.php?/category/beouets" title="Miniatures" alt="Miniatures"><area shape=rect coords="1245,0,1656,1242" href="picture.php?/12741/category/beouets" title="Suivante : 2016-05-16 beouets goomi 3299" alt="2016-05-16 beouets goomi 3299"></map> " />

J'ai essayé une requête 

Code:

{$current.selected_derivative->get_url()}

qui me renvoie bien l'URL de l'image, mais ça pête le site si la page image n'est pas relative à une image :par exemple si c'est une vidéo (avec le plugin "Embedded Videos").

Il vaut mieux que j'explique aussi ce que je veux faire au final ; je veux intégrer dans l'en-tête de la page image les balises standards Open Graph pour le partage des cartes sur les médias sociaux (Facebook et Twitter). Je trouve d'ailleurs dommage que ce ne soit pas intégré dans Piwigo par défaut. J'utilisais auparavant les plugins Facebook Plug et Twitter Cards mais il ne fonctionnent pas bien du tout.

Voilà où j'en suis dans mon template-extension/image.tpl, ça fonctionne très bien pour les pages images mais ça me pête les pages images contenant une vidéo (générée par le plugin "Embedded Videos") :

Code:

{html_head}
<meta property="og:title" content="{$current.TITLE}" />
<meta property="og:description" content="{$COMMENT_IMG}" />
<meta property="og:site_name" content="Béouèts à Vic | Photos de Pentecotavic" />
<meta property="og:type" content="article" />
<meta property="og:image" content="{$current.selected_derivative->get_url()}" />
<meta property="og:url" content="https://www.beouetsavic.fr/{$U_CANONICAL}" />
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="{$current.selected_derivative->get_url()}" />
<meta name="twitter:title" content="{$current.TITLE}" />
<meta name="twitter:description" content="{$current.TITLE}" />
{/html_head}

Dernière modification par titounet (2017-03-03 12:15:15)


Version de Piwigo: 2.9.0
PHP: 7.0.15 et MySQL: 5.5.55
Thème Piwigo : Modus
URL Piwigo: https://www.beouetsavic.fr

Hors ligne

#4 2017-03-03 12:18:34

flop25
Équipe Piwigo
2006-07-06
6382

Re: Code pour appeler l'URL de l'mage dans template custom image.tpl

ha ben le plus simple est d'utiliser header.tpl !
[Github] Piwigo file themes/default/template/header.tpl
avec des if isset( pour tester l'existence de chaque varaible
n'oublier pas de commenter votre code pour vous rappelez ce que vous avez rajouté

Hors ligne

#5 2017-03-03 12:37:20

titounet
Membre
Mauvezin, Gers
2010-06-07
49

Re: Code pour appeler l'URL de l'mage dans template custom image.tpl

Merci @flop25

ok je vais creuser cette piste.

Dernière modification par titounet (2017-03-03 12:40:48)


Version de Piwigo: 2.9.0
PHP: 7.0.15 et MySQL: 5.5.55
Thème Piwigo : Modus
URL Piwigo: https://www.beouetsavic.fr

Hors ligne

#6 2017-03-03 16:27:25

titounet
Membre
Mauvezin, Gers
2010-06-07
49

Re: Code pour appeler l'URL de l'mage dans template custom image.tpl

Bon, déjà y a presque tout bon en utilisant les if isset(  dans mon template header, merci @flop25 pour le conseil !

Par contre, je ne sais toujours pas gérer l'Open Graph Tag "og:image", ma priorité absolue étant les 2 premiers points  :
- récupérer le lien vers le fichier image (original ou grande taille) sur les pages d'images (et non pas le code généré par {$ELEMENT_CONTENT})
- récupérer le lien vers le thumbnail pour les pages images où il y a une video (plugin Embedded Video)
- Et après il faudra voir comment je gère les autres pages (pages générées par le plugin Additional Pages, etc.), sachant que pour les fichier templates de type about.tpl je sais gérer


flop25 a écrit:

ha ben le plus simple est d'utiliser header.tpl !
[Github] Piwigo file themes/default/template/header.tpl
avec des if isset( pour tester l'existence de chaque varaible
n'oublier pas de commenter votre code pour vous rappelez ce que vous avez rajouté

Dernière modification par titounet (2017-03-03 16:54:28)


Version de Piwigo: 2.9.0
PHP: 7.0.15 et MySQL: 5.5.55
Thème Piwigo : Modus
URL Piwigo: https://www.beouetsavic.fr

Hors ligne

#7 2017-03-03 17:59:42

titounet
Membre
Mauvezin, Gers
2010-06-07
49

Re: Code pour appeler l'URL de l'mage dans template custom image.tpl

Je continue à avance, ça progresse. Dans mon template header, j'ai rajouté ça :

Code:

{if isset($PHOTO)}
{if isset($GVIDEO.video_id)}<meta property="og:image" content="https://www.beouetsavic.fr/{$current.derivatives.small->get_url()}" />
{else}<meta property="og:image" content="{$current.selected_derivative->get_url()}" />
{/if}
{/if}

Comme ça pour la balise Open Graph "og:image" :
- dans les pages contenant des vidéos  (plugin "Embedded Videos") je récupère la thumbnail de taille small (supérieure au 200px mini pour l'Open Graph Facebook)
- pour les pages d'image uniquement, je récupére le lien du fichier image

Prochaine étape : pouvoir afficher une image par défaut pour les pages générées avec le plugin "Additionnal Pages".


Version de Piwigo: 2.9.0
PHP: 7.0.15 et MySQL: 5.5.55
Thème Piwigo : Modus
URL Piwigo: https://www.beouetsavic.fr

Hors ligne

#8 2017-03-04 16:15:35

titounet
Membre
Mauvezin, Gers
2010-06-07
49

Re: Code pour appeler l'URL de l'mage dans template custom image.tpl

Pour les pages générées par le plugin Additionnal Pages, j'ai géré au cas par cas par titre de page en utilisant
{if $PAGE_TITLE=='Exemple de titre de page'}

Dernière modification par titounet (2017-03-04 16:15:49)


Version de Piwigo: 2.9.0
PHP: 7.0.15 et MySQL: 5.5.55
Thème Piwigo : Modus
URL Piwigo: https://www.beouetsavic.fr

Hors ligne

#9 2017-03-04 16:58:06

ddtddt
Équipe Piwigo
Quetigny (21) - France
2007-07-27
14120

Re: Code pour appeler l'URL de l'mage dans template custom image.tpl

Bonjour,

Il faudrait plutôt faire un plugin perso ;-)


Vous aimez Piwigo alors n'hésitez pas à participer avec nous, plus d'infos sur la page "Contribuer à Piwigo". Si vous n'avez pas beaucoup de temps et que vous souhaitez nous soutenir vous pouvez aussi le faire par un don.

Hors ligne

#10 2017-03-04 17:04:50

flop25
Équipe Piwigo
2006-07-06
6382

Re: Code pour appeler l'URL de l'mage dans template custom image.tpl

titounet a écrit:

Pour les pages générées par le plugin Additionnal Pages, j'ai géré au cas par cas par titre de page en utilisant
{if $PAGE_TITLE=='Exemple de titre de page'}

bravo
dsl je n'ai que très peu de temps pour aider en ce moment

Hors ligne

#11 2017-03-04 20:10:50

titounet
Membre
Mauvezin, Gers
2010-06-07
49

Re: Code pour appeler l'URL de l'mage dans template custom image.tpl

Merci beaucoup @flop25,
Vos conseils m'on aidé car les if isset dans le template perso header m'ont permis de trouver des solutions.

flop25 a écrit:

bravo
dsl je n'ai que très peu de temps pour aider en ce moment


Version de Piwigo: 2.9.0
PHP: 7.0.15 et MySQL: 5.5.55
Thème Piwigo : Modus
URL Piwigo: https://www.beouetsavic.fr

Hors ligne

#12 2017-03-04 20:12:38

titounet
Membre
Mauvezin, Gers
2010-06-07
49

Re: Code pour appeler l'URL de l'mage dans template custom image.tpl

Bonjour @ddtddt

Merci pour le conseil.
J'ai suivi les conseils de @flop25 et j'ai mis tout ça dans mon template perso remplaçant le header.tpl

ddtddt a écrit:

Bonjour,

Il faudrait plutôt faire un plugin perso ;-)


Version de Piwigo: 2.9.0
PHP: 7.0.15 et MySQL: 5.5.55
Thème Piwigo : Modus
URL Piwigo: https://www.beouetsavic.fr

Hors ligne

#13 2017-03-04 22:06:12

ddtddt
Équipe Piwigo
Quetigny (21) - France
2007-07-27
14120

Re: Code pour appeler l'URL de l'mage dans template custom image.tpl

titounet a écrit:

Bonjour @ddtddt

Merci pour le conseil.
J'ai suivi les conseils de @flop25 et j'ai mis tout ça dans mon template perso remplaçant le header.tpl

ddtddt a écrit:

Bonjour,

Il faudrait plutôt faire un plugin perso ;-)

c'est bien aussi ;-)


Vous aimez Piwigo alors n'hésitez pas à participer avec nous, plus d'infos sur la page "Contribuer à Piwigo". Si vous n'avez pas beaucoup de temps et que vous souhaitez nous soutenir vous pouvez aussi le faire par un don.

Hors ligne

  •  » Styles
  •  » Code pour appeler l'URL de l'mage dans template custom image.tpl

Pied de page des forums

Propulsé par FluxBB