0
<?php if ( have_posts() ) : ?>

<?php
$count = 1;
$featuredPosts = 9;
query_posts('showposts=19');
?>

<div class="articleTile column_3">

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

    <?php if($count > $featuredPosts) : ?> 

        <!--change class to articleList column_2-->

    <?php endif; ?>

<div class="column">

    <?php get_template_part( 'content', 'featured' ); ?>

    <!-- #post-<?php the_ID(); ?> -->

</div>

<?php
$count = $count ++;
endwhile;
?>

</div>

<div class="articleTile column_3">count 変数が 10 に達したときに、要素をターゲットにしてそのクラスを変更するにはどうすればよいでしょうか?

編集:私はばかですごめんなさい。

私はそれを行うことができました:

<?php if ( have_posts() ) : ?>

<?php
$count = 1;
$featuredPosts = 9;
query_posts('showposts=19');
?>

<div class="articleTile column_3">

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

    <?php if($count == $featuredPosts + 1) : ?>

    <?php echo $count ?>
        </div>
        <div class="articleList column_2">

    <?php endif; ?>

<div class="column">
<?php echo $count ?>
    <?php get_template_part( 'content', 'featured' ); ?>

    <!-- #post-<?php the_ID(); ?> -->

</div>

<?php
$count = $count +1;
endwhile;
?>

</div>

私の元の方法は、別のクラスの 2 番目の要素がなければ機能しませんでした。謝罪いたします。彼らが私を正しい方向に向けるのを助けてくれた素早い反応に感謝します.

4

4 に答える 4

2

最初に a ループを実行して合計カウントがどうなるかを確認し、それを使用して適切なクラスを設定する方が賢明ではないでしょうか?

もしかしてこういうこと?:

<?php if ( have_posts() ) : ?>

<?php
$count = 1;
$count_posts = 1;
$featuredPosts = 9;
$class = 'column_3';

query_posts('showposts=19');

/* Run loop */
while ( have_posts() ) : the_post(); 

    $count_posts = $count_posts ++;
endwhile;

if ($count_posts > $featuredPosts) { $class = 'column_2'; }

?>

<div class="articleTile <? echo $class; ?>">

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



<div class="column">

    <?php get_template_part( 'content', 'featured' ); ?>

    <!-- #post-<?php the_ID(); ?> -->

</div>

<?php
$count = $count ++;
endwhile;
?>

</div>
于 2012-04-26T09:15:46.257 に答える
0

これは私が使用したものです:

<?php if ( have_posts() ) : ?>

<?php
$count = 1;
$featuredPosts = 9;
query_posts('showposts=19');
?>

<div class="articleTile column_3">

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

    <?php if($count == $featuredPosts + 1) : ?>

    <?php echo $count ?>
        </div>
        <div class="articleList column_2">

    <?php endif; ?>

<div class="column">
<?php echo $count ?>
    <?php get_template_part( 'content', 'featured' ); ?>

    <!-- #post-<?php the_ID(); ?> -->

</div>

<?php
$count = $count +1;
endwhile;
?>

</div>
于 2012-10-11T08:26:55.640 に答える
0

次のようなdivクラスに条件を追加するだけです

このdivをループ内に配置する必要があります

<div class="<?php echo ($count<=10) ? 'articleTile column_3' : 'articleTile column_5' ?>">
于 2012-04-26T09:14:13.107 に答える
-1
<div class=<?php echo $class; ?></div>

クラスを変更したい要素でこれを試すことができます。

$class = "oldclass";
if(a==10){
$class= "newclass";
}
于 2012-04-26T09:18:39.127 に答える