WordPress HowTo – die Startseite, Teil3
04/2008

Die Startseite – verschiedene Möglichkeiten der Postdarstellung

Wie schon in Teil1 beschrieben löscht man den kompletten Loop aus der Startseite, sodaß nur mehr das Themegerüst übrigbleibt:

1
2
3
4
5
6
<?php get_header(); ?>
<div id="content" class="narrowcolumn">//Anfang Inhaltsbereich
 
</div> // Ende Inhaltsbereich
<?php get_sidebar(); ?>
<?php get_footer(); ?>

Zwischen dem <div> und </div> kann man nun die Posts auf die verschiedenste Arten darstellen, indem man einen der folgenden Codes verwendet und diesen vor den normalen Loop setzt:

1
2
3
4
5
<?php
   if (is_home()) {
      query_posts("cat=1"); // Post nur aus einer bestimmten Kategorie
   }
?>
1
2
3
4
5
<?php
   if (is_home()) {
      query_posts("cat=-1"); // Posts aller Kategorien außer einer bestimmten
   }
?>
1
2
3
4
5
<?php
   if (is_home()) {
      query_posts("cat=-1, -5, -5"); // mehrere Kategorien ausschließen
   }
?>
1
2
3
4
5
6
7
<?php $current_month = date('m'); ?>
<?php $current_year = date('Y'); ?>
<?php
   if (is_home()) {
      query_posts("year=$current_year&monthnum=$current_month"); // alle Posts des aktuellen Monats
   }
?>

geht aber auch mit einer bestimmten statischen Seite

1
2
3
<?php
query_posts('pagename=xxxxx'); // setze statt xxxxx deine Seite (ID oder Name) ein
?>

Die obigen Codes können mit folgenden Variablen kombiniert werden:

1
2
3
&showposts=xx // Postanzahl limitieren
&orderby= xx // gordnet nach author, date, title, modified, menu_order (nur bei statischen Seiten), parent, ID oder rand
&order=xx // ASC, DESC (aufsteigend, absteigend)

Ein einfaches Beispiel:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?php get_header(); ?>
<div id="content" class="narrowcolumn">//Anfang Inhaltsbereich
 
<h2>Willkommen auf meinem Blog!</h2>
 
<?php
   if (is_home()) {
      query_posts("cat=5&showposts=4&order=ASC"); // zeige 4 Posts aus der Kategorie 5, aufsteigend sortiert
   }
?>
 
<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>
 
<div class="post" id="post-<?php the_ID(); ?>">
<h2><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanenter Link zu <?php the_title_attribute(); ?>"><?php the_title(); ?></a></h2>
<small><?php the_time('d.m.Y') ?></small>
 
<div class="entry">
<?php the_excerpt(); ?>
</div>
 
<p class="postmetadata"><?php the_tags('Tags: ', ', ', '<br />'); ?> gepostet unter <?php the_category(', ') ?> | <?php edit_post_link('Edit', '', ' | '); ?>  <?php comments_popup_link('0 Kommentare', '1 Kommentar', '% Kommentare'); ?></p>
</div>
 
<?php endwhile; ?>
<?php else : ?>
 
<h2 class="center">Nichts gefunden!</h2>
<p class="center">Es gibt leider keinen Artikel, der deinen Kriterien entspricht.</p>
<?php include (TEMPLATEPATH . "/searchform.php"); ?>
 
<?php endif; ?>
 
</div>
 
<?php get_sidebar(); ?>
 
<?php get_footer(); ?>

Wie du siehst, noch mehr Möglichkeiten zu Startseitengestaltung. Praxistaugliche Beispiele demnächst …

--- ende artikel ---------------------------

kOmMeNtaR sChReIbEn:



*


* (keine Veröffentlichung)