• Opgelost lerrie

    (@lerrie)


    Voor een website heb ik een Custom Post Type genaamd “Agenda” aan wordpress toegevoegd. Op de home page laat ik de laatste 5 “Agendapunten” zien door middel van de volgende loop

    <?php $loop = new WP_Query( array( 'post_type' => 'agenda', 'posts_per_page' => 5 ) ); ?>
    				<?php while ( $loop->have_posts() ) : $loop->the_post(); ?>
    					<div class="entry-content">
    						<?php the_content(); ?>
    					</div>
    				<?php endwhile; ?> </p>

    Nu wil ik er voor zorgen dat als er geen agenda punten zijn dat er een standaard tekst komt te staan (bijv. “Geen agendapunten”) dmv van de <?php else: ?> code alleen ik krijg dit niet voor elkaar. Ik heb gezocht op google maar kom er niet echt uit. Zou iemand mij hierbij kunnen helpen.

    Bvd

10 reacties aan het bekijken - 1 tot 10 (van in totaal 10)
  • Je kan ook in de loop een variabele laten meelopen. Zet hem vooraf op 0 en test in de loop of the_content() inhoud heeft. Zo nee, dan blijft ook de variabele 0. Zo ja hoog dan de variabele op met 1. Test na endwhile de variabele. Is ie nog steeds 0 dan print je jouw tekst anders loopt ie ongewijzigd door.

    Thread starter lerrie

    (@lerrie)

    Weet niet of mij dat gaat lukken! Ik snap de gedacht maar hoe zou dan de code eruit komen te zien? Of zijn er nog andere manieren?

    Thread starter lerrie

    (@lerrie)

    niemand?

    Ik denk dat je hier op doelt:

    <?php $loop = new WP_Query( array( 'post_type' => 'agenda', 'posts_per_page' => 5 ) ); ?>
      <?php if ($loop->have_posts()) : while (have_posts()) : the_post(); ?>
    
      	<div <?php post_class(); ?> id="post-<?php the_ID(); ?>">
      		<h1><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h1>
      		<?php the_content(); ?>
      	</div>
    
      <?php endwhile; ?>
      <?php else : ?>
    
      	<div <?php post_class(); ?> id="post-<?php the_ID(); ?>">
      		<h1>Not Found</h1>
      	</div>
    
      <?php endif; ?>

    Deze code komt hier vandaan: http://digwp.com/2011/05/loops/

    Thread starter lerrie

    (@lerrie)

    Bedankt! Ik denk dat deze moet werken! Ik ga hem vanmiddag even testen.

    Even offtopic, is het gebruiken van custom post types handig voor bepaalde secties op bijv. de home page of zouden jullie eerder kiezen voor widgets?

    Ik gebruik op dit moment de Simple Fields plugin, deze is op dit moment niet compatible met 3.3..

    Thread starter lerrie

    (@lerrie)

    Ok ik zal eens even kijken. Het probleem met deze posts (ook custom post types) is dat ze ook een eigen pagina creeren met single.php maar ik wil dat 2 type berichten (agenda, recencies) enkel op de home page komen en geen eigen pagina creeren. De blog pagina mag wel gebruik maken van de single.php . Weet iemand hoe ik dat probleem kan tackelen of moet ik hiervoor even een nieuw topic aanmaken?

    Thread starter lerrie

    (@lerrie)

    Helaas werkt de if functie nog steeds niet. Als ik de bovenstaande code invul op de plaats waar ik eerst mijn eigen code had staan komt er alleen in H1 formaat “HOME” te staan, en niet de posts uit mijn custom post types. Weet iemand hoe dit komt?

    Ik denk dat het andersom moet eerst de Loop starten dan IF have posts (nee = empty) -> foutmelding en daarna pas de Ja bevat wel posts dan de while have posts.

    Maar ik ben ook geen PHP King ik kijk alleen een beetje naar de code en probeer het dan te begrijpen..

    Maak wel even een back-up zodat je dit eerst kunt testen maar later weer terug kan als het niet werkt.

    <?php $loop = new WP_Query( array( 'post_type' => 'agenda', 'posts_per_page' => 5 ) ); ?>
         <?php if ( ! have_posts() ) : ?>
              <div id="ID invullen" class="CLASS invullen">
                   <h1 class="entry-title">Titel invullen</h1>
                   <div class="entry-content">
                         <p>Blaat blaat</p>
                   </div>
              </div>
         <?php endif; ?>
    
         <?php while (have_posts()) : the_post(); ?>
              <div <?php post_class(); ?> id="post-<?php the_ID(); ?>">
                   <h1><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h1>
                   <?php the_content(); ?>
              </div>
         <?php endwhile; ?>
    Thread starter lerrie

    (@lerrie)

    Helaas zelfde uitkomst!

10 reacties aan het bekijken - 1 tot 10 (van in totaal 10)
  • Het onderwerp ‘Voeg else: toe aan Custom Post Loop’ is gesloten voor nieuwe reacties.