Plusieurs colonnes

Bonjour,

J'aimerais savoir si l'un d'entre vous à déjà essayer de bricoler les templates pour avoir une présentation de l'article en plusieurs colonnes. Sachant que chacune doit-être indépendantes et mis à jour indépendamment ?

Si on part sur 3 colonnes :
Est-ce qu'il vaut mieux créer un template avec chapo + article-partie1 . article-partie2 . article-partie3 ?
Ou bien on liste article 1 article 2 article 3 ?

Merci pour vos réponses.

Jérôme.

Réponses

  • danielsandanielsan Member
    septembre 2011 modifié
    Bonjour,

    soit un script qui coupe le contenu tous les X caractères sans les balises html
    ( et si la 3ème colonne est plus grande que les 2 premières, il se passe quoi ? ),
    soit un script qui compte le nombre de caractères et coupe le contenu en 3 blocs,
    soit un peu de CSS3 ( http://www.w3.org/TR/2001/WD-css3-multicol-20010118/ ).

    Mais à partir d'une certaine taille de contenu,

    le visiteur puis puis en haut
    scroll remonte redescend, de la 3ème,
    en bas en haut puis puis
    de la première de la seconde, remonte redescend ... :P
    colonne,

    plus fatigant que de lire ce dernier paragraphe !
  • Merci Danielsan. ;) Je ne savais qu'on pouvait faire ça en css valid et sans passer par du js.
  • Bonjour DanielSan,

    Merci de ta réponse mais ce n'est pas ce que je veux, les contenus doivent être indépendants. comme le Chapô et le Contenu.
    Dans le même article : chapô + contenu1 +contenu+2 contenu3
    Les 3 contenus sont présenté en colonnes mais surtout apparents dans l'admin.

    En ce qui concerne ton idée, il serait plus simple de passer par les css :
    http://www.w3.org/TR/css3-multicol/

    Merci encore.
  • danielsandanielsan Member
    septembre 2011 modifié
    de rien.

    vive le CSS3 ! :P
  • jeronicozjeronicoz Member
    septembre 2011 modifié
    Bonsoir,

    Je relance mon post parce que je ne suis pas certain que ce que je cherche à faire n'ait pas été déjà fait.
    Transformer pluxml (via les templates) pour avoir une page du style :
    exemple :
    header
    menu si
    châpo de
    article bar
    Sous-article /1 sous-article2 /sous-article3
    pied de page

    Avec les champs correspondant dans l'admin.
    Je pense que ça peut être utile de pouvoir moduler les champs possibles des pages sans avoir à faire le travail pour chacune d'entre elles.
    Qu'en pensez-vous ?

    Jérôme.
  • FrancisFrancis Member
    décembre 2011 modifié
    Bonjour,
    Je redécouvre PluXML avec ses nouvelles évolutions, je vais l'utiliser régulièrement pour créer des sites modifiables.

    J'ai réussi à remplacer la sidebar par le contenu d'une page statique.

    Mon but était d'afficher, sur toutes les pages statiques du site, un contenu modifiable dans la colonne de droite (encart du genre "Actualités-Contact-Adresse..."). Cette solution peut s'adapter à d'autres cas, comme créer une page avec 3 colonnes indépendantes.

    Ma méthode :

    - Création d'une page statique appelée "Colonne 2" => le fichier associé (contenant "Actualités-Contact-Adresse...") est pour moi : data/statiques/005.colonne2.php

    - Création d'un modèle statique spécifique themes/defaut/static-perso.php, copie de static.php où la ligne suivante a été modifiée :
    <?php include(dirname(__FILE__).'/sidebar.php');  ?>
    
    Cette ligne est à remplacer par un include de la page statique qui est le contenu de cette colonne de droite :
    <div id="aside">
    		<?php include('data/statiques/005.colonne2.php');?>
    	</div>
    
    Pour le bloc div, on pourrait utiliser un autre identifiant que "aside" et adapter le CSS, mais j'ai trouvé plus simple de laisser comme ça.


    - Toutes les pages statiques, qui doivent afficher ce contenu à droite, doivent être associées au template "static-perso.php"


    Cette méthode est un peu rigide, je ne sais pas si elle résistera aux mises à jour, mais pour l'instant elle marche bien avec PluXML 5.1.3.

    L'idéal serait que PluXML permette d'attribuer à une page différentes positions (comme dans Joomla), par exemple "page", "position1", "position2", ... Ensuite, il suffirait d'écrire dans le modèle les include associés à ces positions.

    Francis

    Edit :
    J'ai trouvé mieux pour afficher une page statique donnée, dans un modèle personnalisé comme static-perso.php :
    <div id="aside">
         <?php $plxShow->staticInclude(005); ?>
    </div>
    
    Le numéro correspond à l'identifiant de la page statique, il apparaît à gauche, dans la liste des pages statiques de l'admin (c'est aussi le début du nom du fichier php associé).
    On peut écrire au choix staticInclude(005) ou staticInclude(5) ça marche.
    De cette façon, on retrouve la souplesse de pouvoir changer le dossier contenant les pages statiques, dans la configuration de PluXML.
  • Merci Francis

    l'idée est bonne, et simple à mettre en place et ça marche je vais l'exploiter !
    une ressource de plus à mettre au compte de Pluxml

    José
  • J'ai amélioré la méthode, en utilisant $plxShow->staticInclude(n°_identifiant_page_statique);

    Le détail se trouve en fin de mon message précédent, j'y ai ajouté un "Edit" pour ne pas disperser les éléments de la solution.
    Francis
  • Jerry WhamJerry Wham Member
    décembre 2011 modifié
    Il est aussi possible de faire un plugin qui ajoute de nouveaux textareas dans la partie admin nouvel article ou page statique. Ensuite créer des templates différents avec des appels de hooks situes à divers endroits pour créer l'effet recherche (2 ou 3 ou n colonnes).

    Il faut bien sûr que le plugin crée de nouvelles balises dans les fichiers xml des articles. Le guide du developeur explique comment faire. Je te renvoie également vers ce post de Stephane qui donne LA bonne marche à suivre pour obtenir un tel resultat.

    Cette méthode évite de modifier le Core et devrait résister aux mises à jour futures (sauf si bien sûr la gestion des plugins est modifiée ce dont je doute).
  • Effectivement, pour écrire des pages sur plusieurs colonnes, le plugin proposé par Stéphane est la meilleure solution. La méthode que j'ai proposée convient surtout pour afficher une colonne latérale modifiable, mais commune à toutes les pages du site.
Connectez-vous ou Inscrivez-vous pour répondre.