web-dev-qa-db-fra.com

Afficher le post en table front end

Je veux créer une table pour afficher toutes les publications, j'utilise WP_query pour obtenir toutes les informations iformatio et créer un modèle de table pour répertorier ma publication. Mais mon problème est qu'un seul poste à l'intérieur de la table. Je veux tout inclure dans la table.

$wpb_all_query = new WP_Query(array('post_type'=>'vendor_management', 'post_status'=>'new', 'posts_per_page'=>-1)); ?>
    <?php if ( $wpb_all_query->have_posts() ) : ?>
<table class="responstable">
            <thead>
                <tr>
                    <th></th>
                    <th>Vendor Name</th>
                </tr>
            </thead>
            <tbody>
                <tr>
                    <?php while ( $wpb_all_query->have_posts() ) : $wpb_all_query->the_post(); ?>
                    <td><input type="checkbox"/></td>
                    <td><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></td>
                </tr>
            </tbody>
        </table>
    <?php endwhile; ?>
    <!-- end of the loop -->


    <?php wp_reset_postdata(); ?>

<?php else : ?>
    <p><?php _e( 'Sorry, no posts matched your criteria.' ); ?></p>
<?php endif; ?>

En gros, je veux créer comme un tableau admin dans le backend qui montre tous les post-include éditer, supprimer, supprimer en bloc dans le front-end, n'importe quel organisme peut-il me dire de le faire. J'ai essayé d'utiliser WP_List_Table mais je ne travaille pas si je ne le fais pas.

2
Diana Rider

Je ne peux pas être tout à fait sûr de votre problème, peut-être qu'un exemple en direct pourrait aider. De plus, avez-vous un statut de publication personnalisé "nouveau" ou une faute de frappe?

mais en regardant le code, je vois que vous avez commencé le code de table en dehors de la boucle while, ce qui est correct, mais l'a terminé à l'intérieur de la boucle. Cela pourrait être la raison pour laquelle vous n’affichez qu’un seul message. S'il vous plaît trouver le code modifié.

$wpb_all_query = new WP_Query(array('post_type'=>'vendor_management', 'post_status'=>'new', 'posts_per_page'=>-1)); ?>
    <?php if ( $wpb_all_query->have_posts() ) : ?>
<table class="responstable">
            <thead>
                <tr>
                    <th></th>
                    <th>Vendor Name</th>
                </tr>
            </thead>
            <tbody>
                <tr>
                    <?php while ( $wpb_all_query->have_posts() ) : $wpb_all_query->the_post(); ?>
                    <td><input type="checkbox"/></td>
                    <td><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></td>
                </tr>

    <?php endwhile; ?>
     </tbody>
        </table>
    <!-- end of the loop -->
    <?php wp_reset_postdata(); ?>

<?php else : ?>
    <p><?php _e( 'Sorry, no posts matched your criteria.' ); ?></p>
<?php endif; ?>

Laissez-moi savoir si cela fonctionne.

0
Sid

J'ai vérifié votre problème. Je pense que cette fonction fonctionnera très bien pour vous. Vérifiez-la et faites-moi savoir si vous rencontrez des problèmes.

$wpb_all_query = new WP_Query(array('post_type'=>'vendor_management', 'posts_per_page'=>-1)); ?>
    <?php if ( $wpb_all_query->have_posts() ) : ?>
<table class="responstable">
            <thead>
                <tr>
                    <th></th>
                    <th>Vendor Name</th>
                </tr>
            </thead>
            <tbody>
                <tr>
                    <?php while ( $wpb_all_query->have_posts() ) : $wpb_all_query->the_post(); ?>
                    <td><input type="checkbox"/></td>
                    <td><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></td>
                </tr>

    <?php endwhile; ?>
     </tbody>
        </table>
    <!-- end of the loop -->


<?php else : ?>
    <p><?php _e( 'Sorry, no posts matched your criteria.' ); ?></p>
<?php endif; ?>
 <?php wp_reset_postdata(); ?>
0
Pratik bhatt