Forum Ametys

Forum de la communauté Ametys

You are not logged in.

#1 08/02/2013 11:59:35

Francis Feytout
Guest
From: Bordeaux 3
Registered: 19/01/2012
Posts: 35

modification de l'affichage par défaut du service de remonté de conten

Bonjour,

Je cherche à modifier la taille de la miniature dans l'affichage par défaut du service de remonté de contenu. Quand je regarde dans [skin]/services/web/pages/services/filtered-contents/ j'ai bien un fichier list_3.3.xsl mais il n'impacte pas la vue par defaut.

Comment et dans quel fichier puis-je trouver le moyen de modifier la vue

Offline

#2 08/02/2013 12:07:27

Raphaël Franchet
Expert Team
From: Toulouse
Registered: 10/08/2010
Posts: 1,111

Re: modification de l'affichage par défaut du service de remonté de conten

Bonjour,
la remontée de contenu se contente de concaténer les vues de contenus.
Par exemple, par défaut c'est la vue résumé/abstract des contenus qui est utilisée (mais c'est le contributeur qui choisit).

Il faut donc modifier sur tous vos types de contenus la vue abstract.

Il se trouve que toutes les vues noyaux se basent sur des XSLs communes, il est donc possible d'ajuster en une seule fois la taille de toutes les vignettes des vues de tous les types de contenus (pourvu qu'ils utilisent ce système) : il s'agit d'avoir une XSL nommée stylesheets/content/common.xsl dans votre charte graphique.
La première ligne de ce fichier sera

<xsl:import href="plugin:web://stylesheets/content/common.xsl"/>

afin de continuer à avoir le comportement actuel.

Puis à l'intérieur copiez ceci (il s'agit du template xsl utilisé par toutes les vues du noyau pour le rendu de la vignette en mode abstract)

    <!-- Illustration small size -->
    <xsl:template name="common-content-body-image-smallsize">
        <xsl:param name="image" select="metadata/illustration/image"/>
        <xsl:param name="alternative" select="metadata/illustration/alt-text"/>
        <xsl:param name="maxWidth" select="'100'"/>
        <xsl:param name="maxHeight" select="'100'"/>
        <xsl:param name="class" select="'small'"/>
        
        <xsl:call-template name="common-content-body-image">
            <xsl:with-param name="image" select="$image"/>
            <xsl:with-param name="alternative" select="$alternative"/>
            <xsl:with-param name="maxWidth" select="$maxWidth"/>
            <xsl:with-param name="maxHeight" select="$maxHeight"/>
            <xsl:with-param name="class" select="$class"/>
        </xsl:call-template>
    </xsl:template>

et modifiez ce qui vous intéresse (à savoir la valeur par défaut des max width et max height).



Maintenant, si votre charte n'utilise pas le mécanisme d'XSL centralisée, il faut juste éditer les vues abstract de chaque type de contenu 1 par 1.

Ce mécanisme d'XSL centralisée existe depuis la 3.3, mais une charte conçue en 3.2 et migrée en 3.3 ne l'utilise probablement pas...


Raphael Franchet
Expert Ametys

Offline

#3 08/02/2013 12:16:09

Francis Feytout
Guest
From: Bordeaux 3
Registered: 19/01/2012
Posts: 35

Re: modification de l'affichage par défaut du service de remonté de conten

Ok merci,

Est-il possible d'avoir plusieurs tailles de vignettes ? Par exemple medium pour une remonté en page d'accueil (vue tabulaire 3*2) et small pour les remontés en liste habituelles ?

Offline

#4 08/02/2013 12:25:58

Raphaël Franchet
Expert Team
From: Toulouse
Registered: 10/08/2010
Posts: 1,111

Re: modification de l'affichage par défaut du service de remonté de conten

Dans ce template xsl, vous pouvez tester si le rendu concerne la page d'accueil via le AmetysXSLHelper


en gros vous faites:

 <xsl:param name="maxWidth">
     <xsl:choose>
          <xsl:when test="ametys:template() = 'index'">100</xsl:when>
          <xsl:otherwise>150</xsl:otherwise>
     </xsl:choose>
</xsl:param>

Cela vous permet d'avoir des tailles MAX de vignettes différentes; mais attention une vignette 4/3 restera 4/3 et une 16/9 restera 16/9. L'image est retaillée en gardant le ratio.

Si vous avez besoin de deux images de format différentes, c'est plus compliqué : soit vous recoupez en css, soit vous ajoutez un champ à tous les types de contenus pour saisir 2 images au lieu d'1 seule...


Raphael Franchet
Expert Ametys

Offline

#5 08/02/2013 12:32:45

Francis Feytout
Guest
From: Bordeaux 3
Registered: 19/01/2012
Posts: 35

Re: modification de l'affichage par défaut du service de remonté de conten

Ok merci !

C'est exactement ce que je voulais car j'ai mes css qui prendront le relais.

Offline

#6 08/02/2013 15:36:09

Francis Feytout
Guest
From: Bordeaux 3
Registered: 19/01/2012
Posts: 35

Re: modification de l'affichage par défaut du service de remonté de conten

Autre question du même genre ...

Ci-joint un screenshot du rendu actuel.
J'aimerais placer le titre l'image et le texte.
Comme la hauteur de l'image ne sera pas fixe je peux difficilement utiliser le positionnement relatif.
Comment puis-je surcharger le html pour inverser les balises ?

Offline

#7 08/02/2013 18:04:18

Raphaël Franchet
Expert Team
From: Toulouse
Registered: 10/08/2010
Posts: 1,111

Re: modification de l'affichage par défaut du service de remonté de conten

la fonction pour joindre les images ne fonctionne pas sur le forum. pouvez-vous la poser sur un outil externe et proposer un lien ?
merci


Raphael Franchet
Expert Ametys

Offline

#8 14/02/2013 15:16:50

Francis Feytout
Guest
From: Bordeaux 3
Registered: 19/01/2012
Posts: 35

Re: modification de l'affichage par défaut du service de remonté de conten

Oups je n'avais pas fait attention. J'ai ma réponse, merci : c'est dans news-abstract.xsl

     <xsl:template name="common-content-body">
        <div class="ametys-cms-content {$common-content-css-class-name} wrapper">
             <!-- Image -->
            <xsl:call-template name="common-content-body-image-smallsize"/>

            <xsl:call-template name="common-content-body-title"/>
           
            <xsl:call-template name="common-content-body-content"/>
        </div>           
    </xsl:template>

Offline

Board footer

Powered by FluxBB