Afficher pageclass_sfx dans un module

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • [Problème] Afficher pageclass_sfx dans un module

    Bonjour,

    Je voudrais faire un truc très simple avec Joomla! 2.5 mais y'a pas moyen, je m'y prend peut-être mal.

    Je résume le cahier des charges du site :
    Le site liste toutes les prestations effectuées par mon client, 1 prestation = 1 article.
    Chaque page affiche les prestations de la catégorie correspondante classés par date.
    La page d'accueil affiche 1 à n articles de la catégorie accueil + les 3 articles les plus récents toutes catégories confondues.

    Le problème :
    jusque là tout va bien sauf que je veux pouvoir styler ces 3 articles les plus récents en fonction de la catégorie à laquelle ils appartiennent, donc récupérer pageclass_sfx ou au moins l'alias de la catégorie.

    J'ai essayé différents modules (placehere, DisplayNews, zaragozalatestnews) qui affichent tous correctement les 3 articles les plus récents, mais aucun ne récupère pageclass_sfx ou l'alias de la catégorie.
    Il y a bien ça dans le code de placehere
    Code PHP:
    <?php echo $params->get('pageclass_sfx'); ?>
    mais ça n'affiche rien, pas d'erreur mais la variable est vide.
    Le mieux que je puisse récupérer dans tout ces modules c'est le nom de la catégorie de l'article -_- Alors je peux me démerder pour appliquer un filtre au nom de la catégorie pour obtenir un alias mais bon c'est vraiment pas top.
    Donc si vous savez comment récupérer pageclass_sfx dans un module ou comment organiser mon site autrement pour obtenir ce que je veux...

    ce que je veux obtenir :

    Code HTML:
    <!-- Page d'accueil -->
    <h1>Accueil du site<h1>
    
    <!-- Type de lien de menu : Blog d'une catégorie -->
    <article class="categorie_accueil">
    	<h2>Bienvenue sur le site</h2>
    	<p>Message de bienvenue</p>
    </article>
    
    <!-- Module qui affiche les 3 articles les plus récents -->
    <article class="categorie_2">
    	<h2>Prestation 3 janvier 2012</h2>
    	<p>Description de la prestation</p>
    </article>
    <article class="categorie_3">
    	<h2>Prestation 2 janvier 2012</h2>
    	<p>Description de la prestation</p>
    </article>
    <article class="categorie_n">
    	<h2>Prestation 1er janvier 2012</h2>
    	<p>Description de la prestation</p>
    </article>

    J'arrive à obtenir tout ça sauf la classe des 3 derniers articles.
    j'ai épluché toutes les docs et forums possibles ces derniers jours et rien, pas moyen de faire un truc aussi simple, je suis désespéré.


    Pour info :
    Je suis web-designer/intégrateur/web-développeur
    Je découvre Joomla! avec une semaine de pratique.
    J'en connais assez pour modifier le code php/html des modules mais je n'ai que des notions en Programmation Orientée Objet.
    J'utilise le projet en cours pour m'exercer sur Joomla! et je souhaite faire le site avec Joomla! 2.5 et HTML5.

    Merci d'avance à tout ceux qui pourront faire avancer mon problème.
    Dernière édition par JPMC à 11/03/2012, 14h48

  • #2
    Re : Afficher pageclass_sfx dans un module

    Je reviens à la charge parce que je n'ai toujours pas trouvé de solution.

    Je reprécise le problème, il s'agit d'appliquer le style css d'une page à des articles affichés par un module (placehere).

    Dans joomla 2.5 le css de la page est parametré ici : Menus -> nom du menu -> nom du lien -> options d'affichage de la page -> classe de la page.

    Le fichier d'affichage des articles sous forme de blog de joomla (components/com_content/views/category/tmpl/blog_item.php) utilise cette syntaxe :
    Code PHP:
    echo $this->escape($this->pageclass_sfx); 
    pour afficher la classe de la page dans les articles et ça fonctionne parfaitement, mais évidement ça ne marche pas si je le colle dans le module pacehere (erreur fatale, ce n'est pas un objet...).

    Le module placehere utilise cette commande :
    Code PHP:
    echo $params->get('pageclass_sfx'); 
    mais la variable est vide, ça ne marche pas (pas d'erreur, mais ça n'affiche rien).

    Je soupçonne que l'appel à cette variable ait été modifié avec la version 2.5 et que placehere ne soit pas à jour.

    Je passe un appel pour que les utilisateurs de placehere vérifient si la classe de la page apparait ou pas dans les articles affichés par placehere suivant leur version de joomla.

    edit :
    Après vérification, il y a une erreur dans le module placehere, il a écrit pageclass_sfx au lieu de moduleclass_sfx, donc en fait ce module utilise le suffixe de classe du module et pas de la page.

    Je ne vois toujours pas de solution à ce problème pourtant simple, je pense que je vais laisser tomber joomla et essayer autre chose.
    Dernière édition par JPMC à 13/03/2012, 15h21 Raison: erreur dans placehere

    Commentaire

    Annonce

    Réduire
    Aucune annonce pour le moment.

    Partenaire de l'association

    Réduire

    Hébergeur Web PlanetHoster
    Travaille ...
    X