我正在创建一个比较表,问题在while循环中,我无法将"tr"
在适当的地方。我需要这样的布局
<table>
<tr>
<td>post title 1</td>
<td>post title 2</td>
<td>post title 3</td>
</tr>
<tr>
<td>post content 1</td>
<td>post content 2</td>
<td>post content 3</td>
</tr>
<tr>
<td>post author 1</td>
<td>post author 2</td>
<td>post author 3</td>
</tr>
</table>
我如何才能做到这一点?似乎没有选择请参见下面的代码
<div class="acadp">
<table>
<tr>
<?php while( $acadp_query->have_posts() ) : $acadp_query->the_post(); ?>
<td><?php the_title(); ?></td>
<td><?php the_content(); ?></td>
<td><?php the_author(); ?></td>
<?php endwhile; ?>
<tr>
</table>
</div>
<?php wp_reset_postdata(); ?>
最合适的回答,由SO网友:Taj Khan 整理而成
<div class="acadp">
<?php
$compare =[];
while( $acadp_query->have_posts() ) {
$acadp_query->the_post(); $post_meta = get_post_meta( $post->ID );
$category = wp_get_object_terms( $post->ID, \'acadp_categories\' );
$compare[\'Title\'][] = get_the_title();
$compare[\'Manufacturer\'][] = $category[0]->name;
$compare[\'Image\'][] = get_the_acadp_listing_thumbnail($post_meta);
if( count( $fields ) ){
foreach( $fields as $field ) {
$value = $post_meta[ $field->ID ][0];
$compare[$field->post_title][] = $value;
}
}
$compare[\'URL\'][] = "<a href=\'".get_the_permalink()."\' class=\'btn btn-primary\'>View Details</a>";
}
?>
<table class="table table-bordered">
<?php foreach ($compare as $feature => $value): ?>
<tr>
<th><?php echo $feature; ?></th>
<td><?php echo implode("</td><td>",$value); ?></td>
</tr>
<?php endforeach; ?>
</table>
</div>
<!-- end of the loop -->
<!-- Use reset postdata to restore orginal query -->
<?php wp_reset_postdata(); ?>