[Résolu] Intégrer des articles dans une page statique

alanalan Member
juillet 2013 modifié dans Entraide
Bonjour,

Je suis en train de faire un site onepage.
Je gère la page depuis une page statique et je souhaite intégrer les deux derniers articles (titres et textes, pas comme dans la sidebar) dans cette page.

Dans ma page statique, j'essaie donc d'utiliser cette boucle
while($plxShow->plxMotor->plxRecord_arts->loop() && $cpt>3)

mais j'ai cette erreur :
Fatal error: Call to a member function loop() on a non-object in .../data/statiques/001.accueil.php on line 28

J'ai essayé de piquer ce code dans le template de catégorie.

Quelqu'un a une idée du code à utiliser pour réaliser ceci ?

Merci :)

Réponses

  • ZgemaZgema Member
    juillet 2013 modifié
    J'ai également fait une page statique avec un template spécial dans lequel j'ai ajouté cette ligne :
    [== PHP ==]
    $plxShow->lastArtList('<li class="noactive">#art_date - <a href="#art_url" title="#art_title">#art_title</a></li>', 100, $plxShow->catId());
    
    J'ai mis 100 pour avoir tous les articles mais, dans ton cas, 2 devrait aller.
  • StéphaneStéphane Member, Former PluXml Project Manager
    Bonjour
    Pour pouvoir utiliser $plxShow dans une page statique il faut mettre au debut de la page
    global $plxShow;
    

    Consultant PluXml

    Ancien responsable du projet (2010 à 2018)

  • Bonjour,

    Merci beaucoup à vous deux, ça a fonctionné :)

    Du coup, j'ai fait un premier test fonctionnel ainsi :
    [== PHP ==]
    global $plxShow;
    $plxShow->lastArtList('<div class="small-12 large-6 columns"><h3>#art_title</h3><div>#art_date</div><div>#art_chapo</div><a href="#art_url" title="#art_title">Lire la suite</a></div>', 2);
    

    Je savais pas qu'on pouvait récupérer ce qu'on voulait de l'article vie cette méthode lastArtList.

    Merci encore.
  • StéphaneStéphane Member, Former PluXml Project Manager
    La fonction lastArtList est détaillé ici

    http://devzone.pluxml.org/index.php?page=plxShow-lastArtList

    Consultant PluXml

    Ancien responsable du projet (2010 à 2018)

  • C'est super, je sais pas pourquoi j'ai encore jamais mis le nez dans cette doc...

    Merci encore :)
  • JoséJosé Member
    Bonjour

    j'utilise la même fonction , en limitant l'intégration des articles à une catégorie donnée.

    toutefois je n'arrive pas à encadrer les articles , le style " border " ne fonctionne pas , et ne s'applique pas au contenu

    $plxShow->lastArtList($format='<p style="border: 2px solid red;margin-bottom:50px;"><h2>#art_title</h2> #art_content</p>',$max=5,$cat_id='3',$ending='')

    je suis preneur de toute proposition

    José
  • StéphaneStéphane Member, Former PluXml Project Manager
    Bonjour

    L'appel de la fonction se fait de cette façon (il ne faut pas mettre le nom des paramètres)
    $plxShow->lastArtList('<p style="border: 2px solid red;margin-bottom:50px;"><h2>#art_title</h2>#art_content</p>',5,3,'')
    

    après tu peux essayer ceci avec !important pour forcer le style au cas où il viendrait en conflit avec une déclaration dans style.css
    $plxShow->lastArtList('<p style="border: 2px solid red !important;margin-bottom:50px;"><h2>#art_title</h2>#art_content</p>',5,3,'')
    

    Consultant PluXml

    Ancien responsable du projet (2010 à 2018)

  • JoséJosé Member
    Je corrige avec les indications , merci.

    pour le style : cela ne marche pas , peut-être que je devrai passer par le css
  • JoséJosé Member
    je défini le style dans la feuille de style et j'obtiens l'encadrement du contenu de l'article , par contre l'article n'est affiché que sur 90 caractères seulement , y-a-t-il une raison qui m'échappe
    [== PHP ==]
    $plxShow->lastArtList(' <table class= "message" ><tr><td><h2> #art_title</h2></td></tr> <tr> <td>#art_content</td></tr></table>',5,3,'')
    
    

    dans le css , j'ai testé plusieurs largeurs de tableau et cela ne change rien.

    Merci de votre aide.
  • StéphaneStéphane Member, Former PluXml Project Manager
    par défaut l'affichage de #art_content est limité à 100 caractères.
    Si tu veux plus utilises: #art_content(999)
    remplace 999 par le nombre de caractères souhaités
    Idem avec #art_chapo

    Consultant PluXml

    Ancien responsable du projet (2010 à 2018)

  • JoséJosé Member
    élémentaire cher Stéphane!
    pourquoi n'y vais-je pas pensé avant.

    merci vraiment, cela va permettre à des "rédacteurs" de mettre sur la page d'accueil ( page statique à laquelle ils n'ont pas accès ) des messages sur l'actualité de l'association.

    José
  • PierrePierre Member
    octobre 2015 modifié
    Je réveille cette vieille rubrique parce qu'un nouveau défi me colle une contrainte très semblable.

    Mon contexte trop long à expliquer me force à utiliser la boucle WHILE mentionnée en début de rubrique. Je n'ai pas le luxe de pouvoir utiliser la fonction lastArtList, j'ai trop d'opérations à effectuer sur l'enregistrement avant de décider s'il sera affiché ou sauté.

    Mes contraintes demandent donc la production et l'affichage d'une page statique qui tourne une boucle WHILE, comme sur l'accueil ou certaines pages de catégorie un peu plus évoluées, mais qui affiche tous les articles. J'ai lu et essayé tout ce que j'ai pu trouver mais je frappe un mur.

    Je simplifie le sujet pour les besoins de la cause, vous comprenez bien que mon travail n'est pas terminé une fois cet obstacle surmonté.
  • StéphaneStéphane Member, Former PluXml Project Manager

    Consultant PluXml

    Ancien responsable du projet (2010 à 2018)

Connectez-vous ou Inscrivez-vous pour répondre.