3

必要なデータを含むテーブルを出力する wordpress ページ テンプレートを作成するのに苦労しています。

現在、すべての情報が正しく出力されていますが、ループごとにテーブルとタイトルが再表示されます。すべてのデータを 1 つのテーブルにループすることは可能ですか?

私のページのテンプレートは次のとおりです。

<?php
/**
 * Template Name: GamesDBTable
 *
 * Selectable from a dropdown menu on the edit page screen.
 */
?>

<?php get_header(); ?>
        <div id="container">
            <div id="content">
<?php 
$type = 'game';
$args=array(
 'post_type' => $type,
 'post_status' => 'publish',
 'paged' => $paged,
'orderby'=> 'title', 
'order' => 'ASC',
);
$temp = $wp_query; // assign ordinal query to temp variable for later use  
$wp_query = null;
$wp_query = new WP_Query($args); 
?>
<?php 
if (have_posts()) : while (have_posts()) : the_post();
$game_identifier = get_game_identifier();
$developer = strip_tags( get_the_term_list( $wp_query->post->ID, 'developer', '', ', ', '' ) );
$genre = strip_tags( get_the_term_list( $wp_query->post->ID, 'genre', '', ', ', '' ) );
$payment = get_field('th_payment_model');
$arating = get_post_meta( $wp_query->post->ID, 'rating_average');
$rating = (($arating[0]) / 10);

;?>

<h4>Games Database</h2>
<table class="publisher">
            <thead>
                <tr>
                    <th>Game Name <a href="#" class="asc">a</a> <a href="#" class="desc">d</a></th>
                    <th>Genre <a href="#" class="asc">a</a> <a href="#" class="desc">d</a></th>
                    <th>Payment Model <a href="#" class="asc">a</a> <a href="#" class="desc">d</a></th> 
                    <th>Developer <a href="#" class="asc">a</a> <a href="#" class="desc">d</a></th>
                    <th>Rating <a href="#" class="asc">a</a> <a href="#" class="desc">d</a></th>
                </tr>
            </thead>
            <tbody>     
            <tr>
                <td><a href='<?php the_permalink() ?>'
rel='bookmark' title='<?php the_title(); ?>'>
<?php the_title(); ?></a></td>
                <td><?php echo $genre; ?></td>
                <td><?php echo $payment; ?></td>
                <td><?php echo $developer; ?></td>
                <td><?php print_r($rating); ?>/10</td>

            </tr>
                        </tbody>
        </table>    


<?php
endwhile; endif; ?>

<!-- PAGINATION --><hr class="light"/><br style="clear:both;"/><div class="aligncenter"><?php echo vpt_pagination(); ?></div>
    </div><!-- #content -->
<?php get_sidebar(); ?>
</div><!-- #container -->
<?php get_sidebar(); ?>
<?php get_footer(); ?>

助けていただければ幸いです。

4

1 に答える 1

2

ループからテーブル ヘッダーを取り出し、ループ内にテーブル行のみを含めます。

    <table class="publisher">
        <thead>
            <tr>
                <th>Game Name <a href="#" class="asc">a</a> <a href="#" class="desc">d</a></th>
                <th>Genre <a href="#" class="asc">a</a> <a href="#" class="desc">d</a></th>
                <th>Payment Model <a href="#" class="asc">a</a> <a href="#" class="desc">d</a></th> 
                <th>Developer <a href="#" class="asc">a</a> <a href="#" class="desc">d</a></th>
                <th>Rating <a href="#" class="asc">a</a> <a href="#" class="desc">d</a></th>
            </tr>
        </thead>
        <tbody>   

        <?php if (have_posts()) : while (have_posts()) : the_post(); ?>

         <?php

         $game_identifier = get_game_identifier();
         $developer = strip_tags( get_the_term_list( $wp_query->post->ID, 'developer', '', ', ', '' ) );
         $genre = strip_tags( get_the_term_list( $wp_query->post->ID, 'genre', '', ', ', '' ) );
         $payment = get_field('th_payment_model');
         $arating = get_post_meta( $wp_query->post->ID, 'rating_average');
         $rating = (($arating[0]) / 10);

         ?>

            <tr>
                <td><a href='<?php the_permalink() ?>'rel='bookmark' title='<?php the_title(); ?>'><?php the_title(); ?></a></td>
                <td><?php echo $genre; ?></td>
                <td><?php echo $payment; ?></td>
                <td><?php echo $developer; ?></td>
                <td><?php print_r($rating); ?>/10</td>

            </tr>


        <?php endwhile; endif; ?>


        </tbody>
    </table>   
于 2013-04-22T07:34:42.573 に答える