Vis alle indlæg fra en kategori på en side

18-03-09 brianbrandt 0 kommentarer

Dette er en af de ting, som jeg ikke har kunne finde et WordPress plugin til at håndtere – at vise alle indlæg fra en specifik kategori på en “side” i WordPress. Jeg kan godt finde hvor de viser titlen, men jeg vil gerne vise et uddrag.

Hvorfor nu ikke bare bruge en kategori og så “arkiv” funktionen?

Fordi jeg gerne vil have det som et menu-punkt. Ja, så kunne jeg indsætte det manuelt ved hjælp af enten:

  • simpel HTML kode <a href=”> </a> eller
  • <?php wp_list_pages(‘title_li=’); ?> og så include eller exclude

Heller ikke en mulighed, da jeg har en dropdown menu, og det er en undermenu hvor siden skal fremstå.

Derfor måtte jeg faktisk ud i et lidt større hack, hvor jeg oprettede en ny side-template, og så lave lidt php-kodning i selve den template. Så når jeg oprettede en ny side, kunne jeg vælge min nye skabelon. I den skabelon indsatte jeg dette stykke kode:

<h1><a href=”<?php the_permalink(); ?>”><?php the_title(); ?></a></h1>

<?php $recent = new WP_Query(“cat=3&showposts=10″); while($recent->have_posts()) : $recent->the_post();?> <div class=”post” id=”<?php the_ID(); ?>”>

<a href=”<?php the_permalink(); ?>”><h2><?php the_title(); ?></h2></a>
<strong><?php the_time(‘j M. Y’); ?></strong><br />
</div>
<?php the_excerpt(); ?>
<?php endwhile; ?>

Det øverste <H1> tag giver mig titlen på siden. Det næste stykke kode henter 10 indlæg fra den specificerede kategori (i dette tilfælde kategorien med ID=3).

Herefter er det titlerne på alle de indlæg der kommer frem <H2> tag’et. Derefter lidt kode der viser datoen.

Excerpt linien er den der gør at det kun er et uddrag du viser af dit indlæg. Du kunne vælge at skrive “content” istedet for “excerpt” og så ville du få hele indlægget. (dette er dog ikke anbefalelsesværdigt, da du så kommer ud i duplicate content problematikken).

Men dette skulle gerne frembringe det ønskede resultat – det gjorde det i hvert fald for mig.