Not logged in. · Lost password · Register
Forum: Non-English Discussion French discussion RSS
Utilisation des médias, affichage des détails
A_Centered_Perspective Template
Avatar
Mot #1
Member since Dec 2010 · 7 posts
Group memberships: Members
Show profile · Link to this post
Subject: Utilisation des médias, affichage des détails
Bonjour,

Mon problème se situe au niveau de l'affichage de détails d'un média: la légende d'une image.

   . J'ai tout d'abord téléchargé cette image depuis mediamanager et taper les détails comme le titre, l'auteur et la légende, les mots clés.

[Image: http://i51.tinypic.com/28ajiup.jpg]

  . Après avoir inséré l'image dans ma page, en cliquant dessus, une page s'ouvre affichant l'image avec sa taille originale et l'ensemble des détails liés à l'image, sauf la légende, qui est de mon point de vue le plus important.

[Image: http://i54.tinypic.com/2nqtgtf.jpg]

  . J'ai alors ouvert le fichier détail.php qui se trouve dans le dossier template A_Centered_Perspective. Et dans la portion de code des détails, je n'ai pas trouvé le moyen d'afficher la légende. J'ignore le nom de la valeur qui permet de l'afficher.

<dl class="img_tags">
        <?php
          $t = tpl_img_getTag('Date.EarliestTime');
          if($t) print '<dt>'.$lang['img_date'].':</dt><dd>'.dformat($t).'</dd>';

          $t = tpl_img_getTag('File.Name');
          if($t) print '<dt>'.$lang['img_fname'].':</dt><dd>'.hsc($t).'</dd>';

          $t = tpl_img_getTag(array('Iptc.Byline','Exif.TIFFArtist','Exif.Artist','Iptc.Credit'));
          if($t) print '<dt>'.$lang['img_artist'].':</dt><dd>'.hsc($t).'</dd>';

          $t = tpl_img_getTag(array('Iptc.CopyrightNotice','Exif.TIFFCopyright','Exif.Copyright'));
          if($t) print '<dt>'.$lang['img_copyr'].':</dt><dd>'.hsc($t).'</dd>';

          $t = tpl_img_getTag('File.Format');
          if($t) print '<dt>'.$lang['img_format'].':</dt><dd>'.hsc($t).'</dd>';

          $t = tpl_img_getTag('File.NiceSize');
          if($t) print '<dt>'.$lang['img_fsize'].':</dt><dd>'.hsc($t).'</dd>';

          $t = tpl_img_getTag('Simple.Camera');
          if($t) print '<dt>'.$lang['img_camera'].':</dt><dd>'.hsc($t).'</dd>';

          $t = tpl_img_getTag(array('IPTC.Keywords','IPTC.Category','xmp.dc:subject'));
          if($t) print '<dt>'.$lang['img_keywords'].':</dt><dd>'.hsc($t).'</dd>';

        ?>
      </dl>

Merci de votre attention.
Avatar
jm_zz #2
Member since Aug 2007 · 301 posts · Location: labaquere momas france
Group memberships: Members
Show profile · Link to this post
Vérifie si tu as ça :

 
     <p class="img_caption">
        <?php print nl2br(hsc(tpl_img_getTag('simple.title'))); ?>
      </p>

ça c'est les détails du template défault :


<?php
/**
 * DokuWiki Image Detail Template
 *
 * This is the template for displaying image details
 *
 * You should leave the doctype at the very top - It should
 * always be the very first line of a document.
 *
 * @link   http://dokuwiki.org/templates
 * @author Andreas Gohr <andi@splitbrain.org>
 */

// must be run from within DokuWiki
if (!defined('DOKU_INC')) die();

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $conf['lang']?>" lang="<?php echo $conf['lang']?>" dir="ltr">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <title>
     <?php echo hsc(tpl_img_getTag('IPTC.Headline',$IMG))?>
    [<?php echo strip_tags($conf['title'])?>]
  </title>

  <?php tpl_metaheaders()?>

  <link rel="shortcut icon" href="<?php echo DOKU_TPL?>images/favicon.ico" />
</head>

<body>
<div class="dokuwiki">
  <?php html_msgarea()?>

  <div class="page">
    <?php if($ERROR){ print $ERROR; }else{ ?>

    <h1><?php echo hsc(tpl_img_getTag('IPTC.Headline',$IMG))?></h1>

    <div class="img_big">
      <?php tpl_img(900,700) ?>
    </div>

    <div class="img_detail">
      <p class="img_caption">
        <?php print nl2br(hsc(tpl_img_getTag('simple.title'))); ?>
      </p>

      <p>&larr; <?php echo $lang['img_backto']?> <?php tpl_pagelink($ID)?></p>

      <dl class="img_tags">
        <?php
          $t = tpl_img_getTag('Date.EarliestTime');
          if($t) print '<dt>'.$lang['img_date'].':</dt><dd>'.dformat($t).'</dd>';

          $t = tpl_img_getTag('File.Name');
          if($t) print '<dt>'.$lang['img_fname'].':</dt><dd>'.hsc($t).'</dd>';

          $t = tpl_img_getTag(array('Iptc.Byline','Exif.TIFFArtist','Exif.Artist','Iptc.Credit'));
          if($t) print '<dt>'.$lang['img_artist'].':</dt><dd>'.hsc($t).'</dd>';

          $t = tpl_img_getTag(array('Iptc.CopyrightNotice','Exif.TIFFCopyright','Exif.Copyright'));
          if($t) print '<dt>'.$lang['img_copyr'].':</dt><dd>'.hsc($t).'</dd>';

          $t = tpl_img_getTag('File.Format');
          if($t) print '<dt>'.$lang['img_format'].':</dt><dd>'.hsc($t).'</dd>';

          $t = tpl_img_getTag('File.NiceSize');
          if($t) print '<dt>'.$lang['img_fsize'].':</dt><dd>'.hsc($t).'</dd>';

          $t = tpl_img_getTag('Simple.Camera');
          if($t) print '<dt>'.$lang['img_camera'].':</dt><dd>'.hsc($t).'</dd>';

          $t = tpl_img_getTag(array('IPTC.Keywords','IPTC.Category','xmp.dc:subject'));
          if($t) print '<dt>'.$lang['img_keywords'].':</dt><dd>'.hsc($t).'</dd>';

        ?>
      </dl>
      <?php //Comment in for Debug// dbg(tpl_img_getTag('Simple.Raw'));?>
    </div>

  <?php } ?>
  </div>
</div>
</body>
</html>
T'as avì dit, que n'i a pas nada estela. I a pas sonque lo movement deus astres e totas la causas. Lo mon còr ? Non. Son tremolar. Benard Manciet
Avatar
Mot #3
Member since Dec 2010 · 7 posts
Group memberships: Members
Show profile · Link to this post
Salut jm_zz,

 Oui j'ai cette ligne dans le code de detail.php du A_Centered_Perspective Template. Ce dernier et celui du template default sont exactement les même.  Mais cette ligne se réfère à l'affichage du titre de l'image. Je ne vois toujours pas comment faire pour afficher la légende.

Dans la partie de code suivante du fichier detail.php, je ne vois pas qu'est-ce que désignent les lignes en rouges. Manque-t-il une ligne se référant à la légende? Merci pour votre éclairage.

    <div class="img_detail">
      <p class="img_caption">
        <?php print nl2br(hsc(tpl_img_getTag('simple.title'))); ?>
      </p>

      <p>&larr; <?php echo $lang['img_backto']?> <?php tpl_pagelink($ID)?></p>

      <dl class="img_tags">
        <?php
          $t = tpl_img_getTag('Date.EarliestTime');
          if($t) print '<dt>'.$lang['img_date'].':</dt><dd>'.dformat($t).'</dd>';

          $t = tpl_img_getTag('File.Name');
          if($t) print '<dt>'.$lang['img_fname'].':</dt><dd>'.hsc($t).'</dd>';

          $t = tpl_img_getTag(array('Iptc.Byline','Exif.TIFFArtist','Exif.Artist','Iptc.Credit'));
          if($t) print '<dt>'.$lang['img_artist'].':</dt><dd>'.hsc($t).'</dd>';

          $t = tpl_img_getTag(array('Iptc.CopyrightNotice','Exif.TIFFCopyright','Exif.Copyright'));
          if($t) print '<dt>'.$lang['img_copyr'].':</dt><dd>'.hsc($t).'</dd>';

          $t = tpl_img_getTag('File.Format');
          if($t) print '<dt>'.$lang['img_format'].':</dt><dd>'.hsc($t).'</dd>';

          $t = tpl_img_getTag('File.NiceSize');
          if($t) print '<dt>'.$lang['img_fsize'].':</dt><dd>'.hsc($t).'</dd>';

                $t = tpl_img_getTag('Simple.Camera');
                if($t) print '<dt>'.$lang['img_camera'].':</dt><dd>'.hsc($t).'</dd>';


          $t = tpl_img_getTag(array('IPTC.Keywords','IPTC.Category','xmp.dc:subject'));
          if($t) print '<dt>'.$lang['img_keywords'].':</dt><dd>'.hsc($t).'</dd>';

        ?>
Avatar
jm_zz #4
Member since Aug 2007 · 301 posts · Location: labaquere momas france
Group memberships: Members
Show profile · Link to this post
Autant pour moi !

en fait : si tu regarde bien ça :

<textarea class="edit" id="meta__20" name="meta[Iptc.Caption]" rows="6" cols="50"></textarea>

Tu vois que le champs de légende correspond à Iptc.Caption.

Donc il faut que tu mettes dans ton detail.php un truc de ce genre : (cf http://www.dokuwiki.org/devel:templates:detail.php)

$t = tpl_img_getTag('Iptc.Caption');
          if($t) print '<dt>Legende :</dt><dd>'.hsc($t).'</dd>';
T'as avì dit, que n'i a pas nada estela. I a pas sonque lo movement deus astres e totas la causas. Lo mon còr ? Non. Son tremolar. Benard Manciet
Avatar
Mot #5
Member since Dec 2010 · 7 posts
Group memberships: Members
Show profile · Link to this post
Ok c'est bien ça!

J'ai pas eu le réflexe de chercher le nom de la variable dans le formulaire de mediamanager... Maintenant tout est clair.

Merci pour ton aide jm_zz!
Avatar
jm_zz #6
Member since Aug 2007 · 301 posts · Location: labaquere momas france
Group memberships: Members
Show profile · Link to this post
Peux-tu publier ton code ou valider le mien, je ne l'ai pas testé.
Merci
T'as avì dit, que n'i a pas nada estela. I a pas sonque lo movement deus astres e totas la causas. Lo mon còr ? Non. Son tremolar. Benard Manciet
Avatar
Mot #7
Member since Dec 2010 · 7 posts
Group memberships: Members
Show profile · Link to this post
Je confirme que le code que tu m'as donné fonctionne jm_zz.
La seule chose que l'on pourrait améliorer est le nom donné au définition term <dt> </dt>, ici en rouge. Il est en français. Mais il faudrait trouver le nom de la variable permettant que légende soit traduit suivant la langue utilisé.

$t = tpl_img_getTag('Iptc.Caption');
          if($t) print '<dt>Legende :</dt><dd>'.hsc($t).'</dd>';
Close Smaller – Larger + Reply to this post:
Verification code: VeriCode Please enter the word from the image into the text field below. (Type the letters only, lower case is okay.)
Smileys: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O
Special characters:
Go to forum
Imprint
This board is powered by the Unclassified NewsBoard software, 20150713-dev, © 2003-2015 by Yves Goergen
Current time: 2020-01-27, 18:59:28 (UTC +01:00)