Post columns : ajouter des colonnes supplémentaires (Créer un compte)

  • Statut : non résolu
3 sujets de 1 à 3 (sur un total de 3)
  • Auteur
    Messages
  • #462346
    Furtif
    Membre
    Initié WordPress
    30 contributions

    Bonjour,

    Ma configuration WP actuelle
    – Version de WordPress : 2.6.1
    – Thème utilisé : default
    – Plugins en place : WP Post Columns
    – Nom de l’hebergeur : Ouvaton
    – Adresse du site :

    Bonjour à tous,

    j’ai installé le plugin Post columns pour obtenir un texte de post en plusieurs colonnes (comme un magazine papier).
    Par défaut, le colonnage ne se fait que sur 2 colonnes. Je voudrais avoir la possibilité de donner plus de colonnes. Voici le code que j’ai modifié (par copier-coller de la colonne 2) pour obtenir une 3e colonne :

    */

    function wp_post_columns($post_column_content) {

    //Set up your columns width and right padding (px, %, em, etc)

    $column1width = ‘200px’;
    $column1paddingright = ’15px’;

    $column2width = ‘200px’;
    $column2paddingright = ’15px’;

    $column3width = ‘200px’;
    $column3paddingright = ’15px’;

    //End of setup


    $column_1 = ‘<div style="width:'.$column1width.'; float: left; padding-right: '.$column1paddingright.'; display: inline;" class="post_column_left">‘;
    $end_column_1 = ‘</div>‘;

    $column_2 = ‘<div style="width:'.$column2width.'; float: left; padding-right: '.$column2paddingright.';">‘;
    $end_column_2 = ‘</div><div style="clear: both;"></div>‘;

    $column_3 = ‘<div style="width:'.$column3width.'; float: left; padding-right: '.$column3paddingright.';" class="post_column_left">‘;
    $end_column_3 = ‘</div><div style="clear: both;"></div>‘;

    $post_column_content = preg_replace(‘/{column1}/’,$column_1, $post_column_content);

    $post_column_content = preg_replace(‘/{/column1}/’,$end_column_1, $post_column_content);

    $post_column_content = preg_replace(‘/{column2}/’,$column_2, $post_column_content);

    $post_column_content = preg_replace(‘/{/column2}/’,$end_column_2, $post_column_content);

    $post_column_content = preg_replace(‘/{column3}/’,$column_3, $post_column_content);

    $post_column_content = preg_replace(‘/{/column3}/’,$end_column_3, $post_column_content);

    $post_column_content = preg_replace(‘/<p><div/','<div', $post_column_content);
    $post_column_content = preg_replace('/div></p>/’,’div>’, $post_column_content);
    $post_column_content = preg_replace(‘/<p></div>/’,’</div>‘, $post_column_content);

    echo $post_column_content;
    }

    add_filter(‘the_content’, ‘wp_post_columns’,13);

    Mais la 3e colonne ne s’aligne pas sur les deux autres (pourtant le div contenant est largement assez grand) :
    3col-decalage.png

    Si vous avez des solutions, je pense que c’est en partie une bidouille en CSS mais je n’arrive pas à déterminer laquelle.

    #642995
    Furtif
    Membre
    Initié WordPress
    30 contributions

    Je me réponds à moi-même après avoir trouvé une solution satisfaisante.
    Aussi étonnant que cela puisse paraître, il faut effacer ce bout de code dans chacune des propriétés des colonnes :

    <div style="clear: both"></div>

    Les colonnes viennent alors se placer sans problèmes.
    Testé sous FF/Mac.

    #642996
    Aurélien Denis
    Participant
    Chevalier WordPress
    205 contributions

    Salut,

    en effet, c’est le principe d’une telle propriété de style 😉

3 sujets de 1 à 3 (sur un total de 3)
  • Vous devez être connecté pour répondre à ce sujet.