是否在设置的帖子数量后添加html查询?

时间:2011-06-22 作者:user4630

可以在一定数量的帖子之后添加一些html吗?

为了在6篇文章之后创建一个滑块,我需要将它括在一个div/li或其他内容中,然后为接下来的6篇文章创建一个新的div/li,依此类推。

这是我的自定义查询,它只在列表中打印帖子名称。

<ul>

<?php $args=array(\'post_type\' => \'courses\',\'post_status\' => \'publish\',\'posts_per_page\' => -1);$my_query = null;$my_query = new WP_Query($args);if( $my_query->have_posts() ) {while ($my_query->have_posts()) : $my_query->the_post(); ?>   

<li><h2><?php the_title(); ?></h2></li> 

<?php endwhile;} wp_reset_query();?> 

</ul>
在6篇文章的开头和结尾之后,我需要打开一个div,然后在第6篇文章之后关闭它。

WordPress PHP是否可以做到这一点?

非常感谢您的帮助:)

2 个回复
最合适的回答,由SO网友:mfields 整理而成

这里有一种方法:

<?php
$courses = get_posts( array(
    \'post_type\' => \'courses\',
    \'posts_per_page\' => -1
    ) );

if ( $courses ) {
    print "\\n" . \'<div style="background:pink">\';
    foreach ( $courses as $course_count => $post ) {
        setup_postdata( $post );
        the_title( "\\n", \'<br>\' );
        if ( 5 == $course_count ) {
            print "\\n" . \'</div>\';
            print "\\n" . \'<div style="background:yellow;">\';
        }
    }
    print "\\n" . \'</div>\';
}

wp_reset_postdata();
?>

SO网友:Michael

a possible way:

<ul>  
<?php $args=array(\'post_type\' => \'courses\',\'post_status\' => \'publish\',\'posts_per_page\' => -1);$my_query = null;
$my_query = null;
$my_query = new WP_Query($args);
    $count = 0; //initialize count variable    
    if( $my_query->have_posts() ) { while ($my_query->have_posts()) : $my_query->the_post(); ?>      
        <?php if( $count%6 == 0 ) { ?>OUTPUT OPENING HTML TAG<?php } ?>       
    <li><h2><?php the_title(); ?></h2></li>    
        <?php if( $count%6 == 5 ) { ?>OUTPUT CLOSING HTML TAG<?php } ?>
        <?php $count++; ?>       
    <?php endwhile; }  ?>    
        <?php if( $count%6 != 0 ) { ?>OUTPUT CLOSING HTML TAG<?php } // in case there is not a multiple of 6 posts ?>       
<?php wp_reset_query();?>   
</ul> 
结束

相关推荐

Admin Theme customization

我遵循wordpress codex网站上关于通过插件创建管理主题的说明。我激活了插件,但我的样式表没有包含在<head>.. 这是我的代码:add_action( \'admin_init\', \'kd_plugin_admin_init\' ); add_action( \'admin_menu\', \'kd_plugin_admin_menu\' ); function kd_plugin_admin_init() { /* Register