[WordPress] Category_ID は存在しない場合、のみ 1 の div の代わりにカテゴリの X の量を表示します。

スポンサーリンク

Question

私はワードプレスといくつかのコース-プラグインで働いています。コースは、取り消された (

z_aflyst

) をすることができます、それはちょうどそうしないと、

afholdt

(= コースが開催されている) バナー

ただし、1 つだけの

Afholdt

バナーを取得いくつかの問題を抱えています。カテゴリを次のコードをループ午前:

foreach ($category_detail as $category_ID)
    {       
        if($category_ID->cat_name == 'z_aflyst') {
        echo "
"; } else ($date_start <= time()) { echo "
"; } }

は非常に論理的な結果は次のよう: 、結果はそのようなすべてのコースは他の少なくとも 2 つのカテゴリ (ことがわかります

TMS+ 3

var_dump

で) を持っているので

問題

foreach

はもちろんのすべてのカテゴリをループとそれがどのようなカテゴリをチェックするのいずれかの

if

を出力する、または

else

、カテゴリによって。カテゴリ

z_aflyst

が現状と 1 つだけの

Afholdt

バナー

z_aflyst

カテゴリがないときだけ 1 つの

Aflyst

バナーを表示するように私の

foreach

を書き換えるかどのように存在?

私の質問は明確に、問題の単語を入れてトラブルを持っていたことを望む !

編集: コースを開催するたびに、カテゴリを選択する必要があるに私のクライアントしたく、ので追加する具体的にはカテゴリ ソリューションではありません (それは、初めにあったものだない非常にユーザーフレンドリー。自動的にチェックする必要があります).

答え

同じのマルコを与えているソリューションが、ビットを変更している:

    $i=0; //Take one variable and initially give it value 0

    foreach ($category_detail as $category_ID)
        {       
            if($category_ID->cat_name == 'z_aflyst') {
            if($i == 0): //put one dummy condition to prevent it from echoing again
                echo "
"; endif; $i++; //To prevent let's increase it } else ($date_start <= time()) { echo "
"; } }

更新:

    $i=0; //For if statement
    $j=0; //For else statement
    foreach ($category_detail as $category_ID)
        {       
            if($category_ID->cat_name == 'z_aflyst') {
            if($i == 0):
                echo "
"; endif; $i++; } else ($date_start <= time()) { if($j == 0): echo "
"; endif; $j++; } }

注:

UNTESTED

答え

に基づいて:

foreach ($category_detail as $category_ID)
    {       
        if($category_ID->cat_name == 'z_aflyst') {
        echo "
"; } else ($date_start <= time()) { echo "
"; } }

2 var を作成してみましょう:

$z_aflyst= false;
$afholdt= false;

ループを見てみましょうし

foreach ($category_detail as $category_ID)
    {      

IF を変更してみましょう

if($category_ID->cat_name == 'z_aflyst' && !$z_aflyst) {
     echo "
"; $z_aflyst = true; } else if($date_start <= time() && !$z_aflyst && !$afholdt) { echo "
"; $afholdt = true; } }

このコードは各タイプのだけ 1 バナーが印刷されます。場合印刷、z_aflyst それは印刷されません afholdt 印刷プリンター、afholdt それがない場合その他の z_aflyst を印刷されない z_aflyst 場合印刷他 afholdt

必要なものですか?

http://stackoverflow.com/questions/27544504/if-category-id-not-present-display-only-1-div-instead-of-x-amount-of-categories

スポンサーリンク

Leave a Reply