通过PHP在其他div之后插入div

时间:2013-02-04 22:33:38

标签: php css wordpress loops css-selectors

我在Wordpress中有一个循环代码,显示我所有的wordpress帖子/ div,它看起来像这样:

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

然后当然在那个循环中,有帖子所在的我的div,然后是一些结束PHP代码..但这是我想做的,我是怎么做的,以及为什么它不起作用。< / p>

我的主页上有大约60个帖子,每个帖子都有相同的div类(当然),我想在我的一些帖子div之前或之后插入其他div。我这样做的方式非常愚蠢回顾。

我使用CSS的nth-child选择我的div帖子,然后给它们边距或清除,以便为我要插入的其他div腾出空间。所以例如,我有60个帖子/ div,每行5个div ..在第10个帖子上,我会给它说一个margin-left多个像素,以便为需要的div腾出空间在这些帖子中插入。然后当它下来将div插入开放点时,我会将其向右浮动(因为div需要插入右侧)以及margin-top多个像素,直到它正确地插入到开放点。

我认为这是正常的,但是由于我的帖子divs宽度是百分比而不是像素(我的帖子是需要在分辨率上重新缩放的缩略图,所以我使用了百分比),插入帖子中的div不会是当窗口改变大小时,或者以不同的分辨率查看时,在正确的位置......所以我做了什么?将需要在这些帖子旁边插入的每个div的所有边距值更改为百分比而不是像素...这个几乎工作..唯一的问题是当您重新调整浏览器时,div插入我的帖子会向上或向下移动5-20像素..这很糟糕!

然后今天晚些时候,我有了一个顿悟..而且是使用PHP在这些帖子中插入div而不是我愚蠢的CSS意识形态,我不知道怎么做,但我确实认为这是可能的一些奇怪的原因。

所以我需要做的是在这些其他div类中插入这些名为“doublearticlewrapperad”的div类。这些post类被称为“doublearticlewrapper”。我希望能够将我的doublearticlewrapperad div类放在其他doublearticlewrapper循环post / div类中。所以说我想在第6,29和40th doublearticlewrapper post div之后插入一个doublearticlewrapperad div ..我希望能够轻松地做到这一点..如果它甚至可能。

只是为了解决任何困惑..

doublearticlewrapperad = divs我想在通过我的WordPress循环显示的div类之后插入..和

articlewrapperad =通过我的wordpress循环显示为帖子的div。

如果有任何方法可以做到这一点,我认为PHP将是正确的方法,但如果事实证明我错了,有一个替代方法或不同的代码来做到这一点..请让我知道。而且伙计们,任何帮助都会真正受到赞赏,我的意思是真的。

2 个答案:

答案 0 :(得分:1)

我认为以下内容应该有效。请注意,我删除了你所拥有的if语句,这是非常无用的,然后用while语句重复检查。

$insert_after = array(6,29,40);
$post_count = 0;
while ( have_posts() ) {
    if (in_array($post_count, $insert_after)) {
        //code to output your doublearticlewrapperad should go here
    }
    // output the post
    the_post(); 
    $post_count++;
}

答案 1 :(得分:1)

试试这个萌芽!

$count = 0;
while ( have_posts() ) {
    if ( ($count % 9) == 0 ) { //this will show anything you add on the condition in every 9th posts.
        //code to output your doublearticlewrapperad should go here
    }
    // output the post
    the_post(); 
    $count++;
}

干杯!