Problème de loop (Créer un compte)

  • Statut : non résolu
11 sujets de 1 à 11 (sur un total de 11)
  • Auteur
    Messages
  • #470460
    geekubuntu
    Participant
    Chevalier WordPress
    286 contributions

    Bonjour,

    Ma configuration WP actuelle
    – Version de WordPress : 2.7.1

    Problème(s) rencontré(s) :

    j’ai une page d’ID 100 avec cette loop dedans:

    <?php if (have_posts()) : ?>
    <?php query_posts('orderby=category&order=asc&cat=133'); ?>
    <?php while (have_posts()) : the_post(); ?>

    codes etc…

    <?php endwhile; ?>
    <?php endif; ?>

    et dans footer.php ce code pour éviter d’afficher certaines choses sur la page d’ID 100:

    <?php if ( !is_page('100')) { ?>
    test
    <?php } ?>

    et bien le mot « test » s’affiche quand même sur ma page d’ID 100 😕

    Si je retire tous les codes à l’intérieur de la loop, le mot « test » s’affiche, donc mon problème doit venir de

    <?php if (have_posts()) : ?>
    <?php query_posts('orderby=category&order=asc&cat=133'); ?>
    <?php while (have_posts()) : the_post(); ?>

    <?php endwhile; ?>
    <?php endif; ?>

    Si j’enléve ma loop entière, le mot « test » n’est pas affiché (ce que fait donc le code dans footer.php), mais je suis pratiquement sur de n’avoir pas fait d’erreurs :(

    ++

    #673645
    Olivier
    Participant
    Maître WordPress
    1415 contributions

    la boucle affiche plusieurs posts non? donc le 100 mais aussi d’autres… si le 100 n’est pas le dernier, c’est mort…

    #673644
    geekubuntu
    Participant
    Chevalier WordPress
    286 contributions

    nan mais justement l’ID 100 c’est pour la page, donc rien à voir avec les posts de la loop.

    #673646
    Olivier
    Participant
    Maître WordPress
    1415 contributions

    voici le code de la fonction :

    /**
    * Whether query is page or contains given page(s).
    *
    * Calls the function without any parameters will only test whether the current
    * query is of the page type. Either a list or a single item can be tested
    * against for whether the query is a page and also is the value or one of the
    * values in the page parameter.
    *
    * The parameter can contain the page ID, page title, or page name. The
    * parameter can also be an array of those three values.
    *
    * @since 1.5.0
    * @uses $wp_query
    *
    * @param mixed $page Either page or list of pages to test against.
    * @return bool
    */
    function is_page ($page =  ») {
    global $wp_query;

    if ( !$wp_query->is_page )
    return false;

    if ( empty($page) )
    return true;

    $page_obj = $wp_query->get_queried_object();

    $page = (array) $page;

    if ( in_array( $page_obj->ID, $page ) )
    return true;
    elseif ( in_array( $page_obj->post_title, $page ) )
    return true;
    else if ( in_array( $page_obj->post_name, $page ) )
    return true;

    return false;
    }

    Je ne suis pas sûr qu’elle s’applique dans ton cas car il y a des posts dans ta page…

    #673647
    geekubuntu
    Participant
    Chevalier WordPress
    286 contributions

    Donc les marqueurs http://codex.wordpress.org/Conditional_Tags sont utilisables avant une boucle mais pas après? 😕

    Comment faire pour qu’une portion de code du footer.php ne soit visible que sur ma page d’ID 100?

    Un moderateur du forum wordpress.org:

    Conditional tags like is_home should work anywhere. If they’re not, then maybe there is some other reason that they are not being run.

    donc c’est bien que mon code dé début de loop est en cause, reste à savoir quoi… :(

    #673648
    Olivier
    Participant
    Maître WordPress
    1415 contributions

    les marqueurs sont settés après que la query soit effectuée.

    #673649
    geekubuntu
    Participant
    Chevalier WordPress
    286 contributions

    settés?

    #673650
    shtark
    Membre
    Chevalier WordPress
    249 contributions
    Olivier wrote:
    les marqueurs sont settés après que la query soit effectuée.

    Ouais bon en francais ca donnerait:
    « Les marqueurs sont assignes apres que la requete soit efectuee »

    Mais bon moi aussi a force de coder… 🙂

    #673651
    Olivier
    Participant
    Maître WordPress
    1415 contributions

    lol 🙂

    laisse tomber, déformation pro, j’arrive plus à parler français comme il faut 🙂

    #673652
    geekubuntu
    Participant
    Chevalier WordPress
    286 contributions

    problème réglé avec

    après ma loop
    🙂

    #673653
    Olivier
    Participant
    Maître WordPress
    1415 contributions

    oui bonne idée en effet 🙂

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