1

Wordpress 内に、すべての wordpress 投稿 / div を表示するループ コードがあり、次のようになります。

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

もちろん、そのループ内には、投稿が含まれる div と、いくつかの最後の php コードがあります。

メインページに約 60 の投稿があり、投稿ごとにすべて同じ div クラスがあり (もちろん)、いくつかの投稿 div の前後に他の div を挿入したいと考えていました。そして、私がこれを行う方法は、振り返ってみるとかなりばかげていました。

CSS を使用nth-childして div 投稿を選択し、マージンまたはクリアを指定して、挿入する他の div 用のスペースを確保しました。したがって、たとえば、60 の投稿 / div、行ごとに 5 つmargin-leftの div があります。次に、div をオープン スポットに挿入する必要が生じたとき、(div を右側に挿入する必要があるため) 右にフロートさmargin-topせ、オープン スポットに正しく収まるまで多くのピクセルをフロートさせます。

これは正しく機能したと思いますが、投稿の div の幅はピクセルではなくパーセンテージであるため (私の投稿は解像度で再スケーリングする必要があるサムネイルなので、パーセンテージを使用しました)、投稿内に挿入された div は正しくありません。ウィンドウのサイズが変更されたとき、または別の解像度で表示されているときに見つけます...だから私は何をしましたか? これらの投稿の横に挿入する必要がある各 div のすべてのマージン値をピクセルではなくパーセンテージに変更します...これはほとんど機能しました..唯一の問題は、ブラウザーを再スケーリングすると、投稿に挿入された div が上下に 5 ~ 20 ピクセル移動します。

それから今日、ひらめきがありました..私の愚かなCSSイデオロギーの代わりに、PHPを使用してこれらの投稿にdivを挿入することでした. .

だから私がする必要があるのは、投稿であるこれらの他のdivクラスの中に「doublearticlewrapperad」と呼ばれるこれらのdivクラスを挿入することです..そしてこれらの投稿クラスは「doublearticlewrapper」と呼ばれます。doublearticlewrapperad div クラスを他の doublearticlewrapper ループ ポスト/div クラスの中に配置できるようにしたいと考えています。それで、6番目、29番目、40番目のdoublearticlewrapper post divの後にdoublearticlewrapperad divを挿入したいとします..簡単にできるようにしたいと思います..可能であれば。

混乱を解消するために..

doublearticlewrapperad = divs WordPress ループを介して表示される div クラスの後に挿入したい..そして

articlewrapperad= wordpress ループを介して投稿として表示される div。

これを行う方法があれば、phpが適切な方法だと思いましたが、間違っていることが判明した場合は、これを行うための代替方法または別のコードがあります..私に知らせてください. 皆さん、どんな助けでも本当に感謝しています。

4

2 に答える 2

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++;
}
于 2013-02-04T22:41:26.047 に答える
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++;
}

乾杯!

于 2013-02-05T02:07:11.377 に答える