CMS Automne

Forum de la communauté du CMS Automne
Nous sommes actuellement le Jeu Nov 14, 2024 6:17 pm

Le fuseau horaire est UTC [Heure d’été]




Publier un nouveau sujet Répondre au sujet  [ 4 messages ] 
Auteur Message
MessagePublié: Lun Nov 15, 2010 4:52 pm 
Hors-ligne
Utilisateur enthousiaste

Inscrit(e) le : Mar Avr 01, 2008 4:40 pm
Message(s) : 6
Localisation : La Canourgue - Lozère
Bonjour,

Je désire créer une rubrique "Actualités" sur toutes les pages du site.
J'ai utilisé le module "Actualités" pour créer une actu.
Je n'ai pas trouvé comment insérer le titre (ou un autre élément) de l'actu sur mon modèle.

Je n'ai pas, dans les rangées proposées, la rangée "Modules".

Pouvez-vous m'aider ?

Merci d'avance,

Yves PIQUET
Serveur dédié : Ubuntu server 10.10
Automne : version 4.0.2


Haut
 Profil  
 
 Sujet du message: Re: Module Polymod Actualités
MessagePublié: Lun Nov 15, 2010 5:59 pm 
Hors-ligne
Administrateur
Avatar de l’utilisateur

Inscrit(e) le : Jeu Juin 16, 2005 8:05 am
Message(s) : 628
Localisation : Toulouse, France
Bonjour Yves,

Que devra afficher cette rangées actualités : La même chose sur toutes les pages ? Une actualité différente sur chaque page ?
Quels champs spécifiques voulez-vous afficher ?

A titre d'exemple j'ai commenté le code d'une rangée qui affiche les dernières actualités et qui prend en paramètre le nombre d'actualités à afficher ainsi que la catégorie d'actualités à afficher.

En espérant que ça réponde à votre question.

Code :
<row>
   <!-- Accès au module actualités en langue française -->
   <block module="pnews" id="actus" language="fr">
      <!-- Objet du module sur lequel va porter la rechercher, nom de la recherche -->
      <atm-search what="{Actualites}" name="actualites">
         <!-- Paramètre de filtre facultatif qui permet de restreindre l'affichage à une catégorie-->
         <atm-search-param search="actualites" type="{Actualites:Categorie:fieldID}" value="block" mandatory="false" />           
         <!-- Nombre d'éléments à afficher, ici on laisse le choix à l'utilisateur avec la valeur block-->
         <atm-search-limit search="actualites" value="block"/>
         <!-- Trie les éléments par date de début de publication en ordre décroissant -->
         <atm-search-order search="actualites" type="publication date after" direction="desc"/>
         <!-- Résultats de la recherche -->
         <atm-result search="actualites">
            <!-- On affiche le titre de l'actualité et un lien vers la page dédiée si il y a un article -->
            <atm-if what="{Actualites:Texte:value}" name="lien">
               <h2><a href="{page:ID_PAGE:url}?item={Actualites:id}">{Actualites:Titre:value}</a></h2>
            </atm-if>   
            <!-- Sinon on affiche juste le titre -->
               <atm-else for="lien">
               <h2>{Actualites:Titre:value}</h2> 
                </atm-else>
            <!-- On affiche la date de début de publication -->
            <p>{Actualites:formatedDateStart|d/m/Y}</p>
            <!-- Si il y a une image, on affiche la vignette, pour le savoir on teste s'il y a une valeur pour la largeur de l'image -->
            <atm-if what="{Actualites:Image:imageWidth}">
               {Actualites:Image:imageHTML}
            </atm-if>
            <!-- On affiche l'introdution de l'actualité -->
            {Actualites:Introduction:htmlvalue}
            <!-- S'il y a un article on affiche un lien vers le détail-->
            <atm-if what="{Actualites:Texte:value}">
               <a href="{page:ID_PAGE:url}?item={Actualites:id}" title="Lire la suite de '{Actualites:label}'">Lire la suite</a>
            </atm-if>         
         </atm-result>
      </atm-search>
   </block>
</row> 

_________________
Frank
http://www.automne-cms.org


Haut
 Profil  
 
 Sujet du message: Re: Module Polymod Actualités
MessagePublié: Jeu Nov 18, 2010 12:57 pm 
Hors-ligne
Utilisateur enthousiaste

Inscrit(e) le : Mar Avr 01, 2008 4:40 pm
Message(s) : 6
Localisation : La Canourgue - Lozère
Le code transmis fonctionne.
Maintenant, j'ai un petit problème, je ne sais pas comment récupérer la valeur de "item" dans la page m'affichant l'actualité...
Si ce n'est qu'en codant en PHP !

Y-a-t-il une solution avec Automne pour afficher la totalité du contenu de l'actualité ?

Merci d'avance.

Yves PIQUET
Serveur dédié : Ubuntu server 10.10
Automne : version 4.0.2


Haut
 Profil  
 
 Sujet du message: Re: Module Polymod Actualités
MessagePublié: Jeu Nov 18, 2010 2:42 pm 
Hors-ligne
Administrateur
Avatar de l’utilisateur

Inscrit(e) le : Jeu Juin 16, 2005 8:05 am
Message(s) : 628
Localisation : Toulouse, France
Dans la rangée donnée en exemple on part du principe assez classique qu'on affiche le titre et l'introduction de l'actualité avec un lien vers l'actualité complète.

Libre à vous de tout afficher directement en ajoutant les champs souhaités.
Dans cet exemple on affiche l'introduction à l'aide de :

Code :
{Actualites:Introduction:htmlvalue}


Si je veux afficher aussi le reste du texte il me suffit d'ajouter à la suite :

Code :
{Actualites:Texte:htmlvalue}


En ce qui concerne la récupération de l'identifiant de l'item on peut ajouter un paramètre facultatif dans les critères de tri de la recherche :

Code :
<atm-search-param search="actualites" type="item" value="{request:int:item}" mandatory="false" />


Ici la valeur de l'item est retourné par {request:int:item} qui veut dire que je peux passer un paramètre nommé item de type entier dans l'URL.

Pour plus d'information sur cette syntaxe, se reporter à l'aide sur les variables générales disponible dans Automne en mode édition du code XML des rangées, dont je recopie ici la partie qui nous intéresse :

Citer:
Variables relatives aux données envoyées (via une adresse ou un formulaire) :
Ces variables correspondent à une variable provenant de la soumission d'un formulaire ou bien d'un paramètre du lien ayant amené à la page en cours.
Elles sont de la forme
Code :
{request:type:name}
:

  • type : Correspond au type de variable attendu, parmi les suivants :
    int : nombre entier,
    ...
  • name : Correspond au nom de la variable souhaité (nom du paramètre dans l'url ou bien nom du champ du formulaire)
.


Ensuite une fois que j'ai donné la possibilité dans ma rangée de passer un paramètre dans l'URL, je peux traiter les 2 cas avec ou sans paramètre dans le tag <atm-result> :

Citer:
<!-- S'il n'est pas présent on affiche juste l'introduction et un lien vers l'actualité complète -->
<atm-if what="!{request:int:item}">
<!-- j'ajoute un lien vers la page en cours à l'aide de self mais ça pourrait être une autre page en passant son ID -->
<h2><a href="{page:self:url}?item={Actualites:id}">{Actualites:Titre:value}</a></h2>
{Actualites:Introduction:htmlvalue}

<!-- Si le paramètre item est present dans la requête (URL) on affiche tout -->
<atm-if what="{request:int:item}">
<!-- J'affiche tous les champs : titre, introduction, texte -->
<h2>{Actualites:Titre:value}</h2>
{Actualites:Introduction:htmlvalue}
{Actualites:Texte:htmlvalue}

Comme tu peux le voir on évite de faire appel à la moindre ligne de PHP mais ça demande de bien connaître toutes les possibilités offertes par les tags XML d'Automne.

_________________
Frank
http://www.automne-cms.org


Haut
 Profil  
 
Afficher les messages publiés depuis :  Trier par  
Publier un nouveau sujet Répondre au sujet  [ 4 messages ] 

Le fuseau horaire est UTC [Heure d’été]


Qui est en ligne ?

Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit et 71 invité(s)


Vous ne pouvez pas publier de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas insérer de pièces jointes dans ce forum

Recherche de:
Aller vers :  
Powered by phpBB® Forum Software © phpBB Group
Traduit par Maël Soucaze et Elglobo © phpBB.fr