Je me suis tué en essayant de comprendre cela par moi-même. Et pour ma vie, je ne peux pas comprendre ce qui cause mes problèmes.
J'ai créé un modèle pour la page de témoignages et utilisé des types d'articles personnalisés pour remplir le contenu. Tout a l'air génial jusqu'à ce que j'ajoute la barre latérale, ce qui crée un grand écart entre la longueur de la barre latérale entre le premier témoignage et le deuxième. Et puis, ils commencent à formater et à s'afficher avec la quantité d'espace correcte entre chacun.
Je peux le faire bien paraître et le corriger en HTML, mais une fois que je l’ai traduit en wordpress, il ne veut pas formater correctement. Des idées quant à ce qui pourrait causer ceci? Merci d'avance à tous!
Captures d'écran: La première est la page html qui "fonctionne" La deuxième est à quoi ressemble la page wordpress avec l'écart.
get_header();
?>
<?php $loop = new WP_Query ( array ( 'post_type' => 'testimonials', 'orderby' => 'post_id', 'order' => 'ASC') ); ?>
<?php while ( $loop->have_posts() ) : $loop->the_post() ?>
<section>
<div class="container">
<div class="row">
<div class="col-12 col-md-8">
<!-- Testimony -->
<div class="row testimonials">
<div class="col-10">
<h5>
<?php the_content(); ?>
<cite>— <?php the_title();?></cite>
</h5>
</div>
</div>
</div>
<div class="col-md-4">
<?php get_sidebar(); ?>
</div> <!-- col -->
</div> <!-- row-->
</div> <!-- container -->
</section>
<?php endwhile;wp_reset_query(); ?>
<?php get_footer();
Je suppose que la get_sidebar()
à l'intérieur de la boucle est à l'origine du problème. Il devrait être en dehors de la boucle.
Dans l’état actuel des choses, un message est affiché, puis vous appelez le code get_sidebar()
, qui affiche le contenu de la barre latérale, puis la boucle continue avec le message suivant.
Déplacez la get_sidebar()
en dehors de la boucle.
C'est donc le code que j'ai modifié pour qu'il fonctionne comme je le voulais :) Un grand merci à Rick!
get_header();
?>
<div class="container">
<div class="row">
<main class="col-md-8">
<?php $loop = new WP_Query ( array ( 'post_type' => 'testimonials', 'orderby' => 'post_id', 'order' => 'ASC') ); ?>
<?php while ( $loop->have_posts() ) : $loop->the_post() ?>
<div class="testimonials">
<h5>
<?php the_content(); ?>
<cite>— <?php the_title();?></cite>
</h5>
</div>
<?php endwhile;wp_reset_query(); ?>
</main>
<!-- SIDEBAR
================================================== -->
<aside class="col-md-4">
<?php get_sidebar(); ?>
</aside>
</div><!-- #primary -->
</div><!-- .container -->
<?php get_footer(); ?>