Forum Ametys

Forum de la communauté Ametys

You are not logged in.

#1 30/11/2017 15:17:01

serialbob
Guest
Registered: 22/10/2016
Posts: 8

RSS taille des images

Bonjour,

Est-il possible de changer la taille des images générées (par défaut 150x150).
J'ai vu que ce paramètre était modifiable dans le fichier content2rss.xsl, mais ou le place-t-on que la surcharge se fasse !!! Une journée  que j'y suis dessus...

Merci

Offline

#2 11/12/2017 16:54:05

Laurence Aumeunier
Expert Team
Registered: 10/08/2010
Posts: 142

Re: RSS taille des images

Bonjour,

Quelle version d'Ametys utilisez-vous ?

Pour les versions 3.7 ou inférieures, il n'est pas possible de surcharger le contenu du fil RSS.

A partir de la version 3.8, il est possible de surcharger le RSS par type de contenu :
skins\[SKIN]\stylesheets\content\[ID_TYPE_CONTENU]\[ID_TYPE_CONTENU]2rss.xsl

Par exemple, pour surcharger le fils RSS pour les actualités, il faut écrire la surcharge dans
skins\[SKIN]\stylesheets\content\org.ametys.web.default.Content.news\org.ametys.web.default.Content.news2rss.xsl


Laurence Aumeunier
Ametys Expert

Offline

#3 17/10/2018 14:47:04

damien
Guest
Registered: 17/10/2018
Posts: 3

Re: RSS taille des images

Bonjour,
Je cherche aussi à modifier la construction du flux RSS dans mon modèle de charte (taille des images entre autres).
Mon problème est que je n'arrive pas à surcharger le xsl existant, même en me basant sur les conseils ci-dessus.
Mon chemin est : cms/models/[nom-de-mon-modele]/stylesheets/content/news, le nom du fichier est news2RSS.xsl et je mets à jour une charte test.
J'ai également testé cms/models/[nom-de-mon-modele]/stylesheets/content/org.ametys.web.default.Content.news/org.ametys.web.default.Content.news2rss.xsl
Peut-être aussi que le code que j'ai repris ne convient pas? J'ai utilisé le suivant en rajoutant " - test1" dans le titre:
https://code.ametys.org/projects/AMETYS … ds%2F3.8.x
Je précise que je suis en version 3.8.4 avec une installation multi-sites.
Merci de votre aide

Last edited by damien (17/10/2018 14:52:47)

Offline

#4 17/10/2018 15:19:08

Laurence Aumeunier
Expert Team
Registered: 10/08/2010
Posts: 142

Re: RSS taille des images

Bonjour,

Le problème je pense est que vous modifiez le modèle de charte (cms/models/[nom-de-mon-modele]/***) au lieu de la charte (cms/skins/[NOM_SKIN]/ ***).
Qu'est-ce que vous réappliquez le modèle à votre charte après votre modifications ?
Si non c'est normal que vous ne voyez pas vos modifications. Il faut soit réappliquer le modèle, soit travailler directement sur les fichiers de la charte (cms/skins/[NOM_SKIN]/ ***).


Laurence Aumeunier
Ametys Expert

Offline

#5 17/10/2018 16:20:10

damien
Guest
Registered: 17/10/2018
Posts: 3

Re: RSS taille des images

Pour ce qui est de réappliquer le modèle, je le fais à chaque fois. Et je souhaite mettre à jour mes chartes grâce au modèle (j'ai actuellement 24 chartes en production qui dépendent de ce modèle).

Offline

#6 23/10/2018 16:14:33

Laurence Aumeunier
Expert Team
Registered: 10/08/2010
Posts: 142

Re: RSS taille des images

J'ai testé à nouveau sur une version 3.8, cela fonctionne pour moi.

Pour le rendu d'un fil RSS, Ametys va rechercher dans l'ordre les fichiers suivants :
- skin://stylesheets/content/org.ametys.plugins.news.Content.news/org.ametys.plugins.news.Content.news2rss-abstract.xsl
- skin://stylesheets/content/org.ametys.plugins.news.Content.news/org.ametys.plugins.news.Content.news2rss.xsl
- context://WEB-INF/param/content-types/web/stylesheets/org.ametys.plugins.news.Content.news/org.ametys.plugins.news.Content.news2rss-abstract.xsl
- context://WEB-INF/param/content-types/web/stylesheets/org.ametys.plugins.news.Content.news/org.ametys.plugins.news.Content.news2rss.xsl
- plugin:web://stylesheets/content/org.ametys.plugins.news.Content.news/org.ametys.plugins.news.Content.news2rss-abstract.xsl
- plugin:web://stylesheets/content/org.ametys.plugins.news.Content.news/org.ametys.plugins.news.Content.news2rss.xsl
- plugin:web://stylesheets/default-content2rss.xsl
- plugin:cms://stylesheets/default-content2rss.xsl

L'algorithme s'arrête au 1er fichier existant, sinon il passe au suivant.

J'ai ajouté le fichier suivant dans ma charte skins\[SKIN]\stylesheets\content\org.ametys.plugins.news.Content.news\org.ametys.plugins.news.Content.news2rss.xsl

Le fichier contient :

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
                            xmlns:i18n="http://apache.org/cocoon/i18n/2.1" 
                            xmlns:ametys="org.ametys.web.transformation.xslt.AmetysXSLTHelper"
                            xmlns:resolver="org.ametys.cms.transformation.xslt.ResolveURIComponent" 
                            exclude-result-prefixes="ametys resolver">

    <xsl:import href="plugin:web://stylesheets/default-content2rss.xsl"/>
    
    <xsl:template match="content">
        <item>
            <title>TEST OVERRIDE <xsl:value-of select="metadata/title"/></title>
            <xsl:if test="//pages/page">
                <link><xsl:value-of select="resolver:resolve('page', //pages/page/@id, false(), true())"/></link>
            </xsl:if>
            <language><xsl:value-of select="@language"/></language>
            <guid isPermaLink="false"><xsl:value-of select="$contextPath"/>/_wrapped-content/<xsl:value-of select="@name"/>.html</guid>
            <pubDate><i18n:date pattern="EEE, d MMM yyyy HH:mm:ss Z" src-pattern="yyyy-MM-dd'T'HH:mm:ss" locale="en_EN"><xsl:value-of select="@lastValidatedAt"/></i18n:date></pubDate>
            <rawDate><xsl:value-of select="@lastValidatedAt"/></rawDate>
            <description>
                <xsl:if test="metadata/illustration/image">
                    &lt;img src="<xsl:value-of select="resolver:resolveBoundedImage(metadata/illustration/image/@type, metadata/illustration/image/@path, 250, 250, false(), true())"/>" alt="<xsl:value-of select="metadata/illustration/alt-text"/>" style="float: left; margin-right: 5px" /&gt;
                </xsl:if>
                <xsl:apply-templates select="metadata/abstract/node()" mode="escape"/>
            </description>
        </item>
    </xsl:template>  
                            
</xsl:stylesheet>

Mon fils RSS sur mes actualités contient bien la modification (TEST OVERRIDE devant le titre).

Pouvez-vous vérifier :

  • que lors de l'application du modèle, vous retrouvez bien le fichier dans les fichiers de la charte

  • que dans le fichier WEB-INF/param/runtime.xml vous avez bien
    <org.ametys.cms.source.ContentView>org.ametys.web.source.WebContentView</org.ametys.cms.source.ContentView>
    et non
    <org.ametys.cms.source.ContentView>org.ametys.cms.source.DefaultContentView</org.ametys.cms.source.ContentView>


Laurence Aumeunier
Ametys Expert

Offline

#7 08/11/2018 16:02:06

damien
Guest
Registered: 17/10/2018
Posts: 3

Re: RSS taille des images

Bonjour,
Merci pour votre précieuse aide. En effet, après plusieurs tests, j'ai pu vérifier que votre code fonctionne pour une remontée de contenus ne comportant que des contenus de type "news" (c'est affiché dans le nom du fichier "news2rss.xsl). J'ai également résolu un autre problème que j'avais concernant les remontées de contenu type "article"  puisque dans ce cas le chemin est:

skins\[SKIN]\stylesheets\content\org.ametys.web.default.Content.article\org.ametys.web.default.Content.article2rss.xsl

et non org.ametys.plugins.article.Content.article2rss.xsl comme j'essayais au départ.

Last edited by damien (08/11/2018 16:02:21)

Offline

Board footer

Powered by FluxBB