WordPress CMS – Gestaltung der Home Seite-Loop Spielereien

Wer WordPress als CMS nutzen mag, gestaltet meist die Startseite völig anders. Dort soll ein Artikel aus jener Kategorie hin, hier drei aus einer anderen Kategorie und wenn geht weiter unten noch 5 Artikel nur als überschrift. Hier gibt 4 Loops als Praxisbeispiele.

Auf der Startseite sollen in entsprechenden Rubrik-Boxen die neuesten Beiträge aus der Rubrik stehen, wie halt auf einer Nachrichtenseite. In der Sidebar Links sollen Beiträge aus der Kategorie Y stehen und auf der anderen Sidebar Rechts drei Beiträge aus der Kategorie Z in der Mitte alle Beiträge wie sonst auch. ”

Dies und einiges mehr ist in WordPress machbar. Grundsätzlich nutzt man dazu den sogenannten Loop.

Nachfolgend findest Du vier verschiedene Loops, die den Vorteil haben, dass Du sie alle vier verwenden kannst. Oder nur drei davon, oder nur zwei. Dies auch in jeder Kombination UND Du kannst den ganz normalen WordPress Loop der in jeder index.php von WordPress zu finden ist, unten einfach dran lassen.

So sehen diese Loops in Aktion aus:

  • 4 Loops in der Sidebar.
  • 5 Loops in der Index .Dass Du hier alle Beiträge in der vollen Ansicht siehst hat damit zu tun, dass sie als statische Seite angezeigt werden. Aber ich wollte meine eigene index.php nicht überschreiben: ;)

WordPress Loop Spielerei 1 aus einer Kategorie (ID 6) einen Artikel

<!--loop1-->
<h3>Kat tipps-und-tricks 1 Artikel</h3>
<?php $top_query = new WP_Query('cat=6&showposts=1'); ?>
<?php while($top_query->have_posts()) : $top_query->the_post(); ?>
 
<p id="post-<?php the_ID(); ?>"><a href="<?php the_permalink() ?>" rel="bookmark"><strong><?php the_title(); ?></strong></a></p>
<?php the_excerpt(); ?>
 
<?php endwhile; ?>

WordPress Loop Spielerei 2 5 Artikel aber eine Kategorie (ID 6) wurde ausgeschlossen

<!--loop2 -->
<h3>alles ohne Kat tipps-und-tricks 5 Artikel</h3>
<?php query_posts('cat=-6&showposts=5'); ?>
<?php while(have_posts()) : the_post(); ?>
 
<p id="post-<?php the_ID(); ?>"><a href="<?php the_permalink() ?>" rel="bookmark"><strong><?php the_title(); ?></strong></a></p>
<?php the_excerpt(); ?>
 
<?php endwhile; ?>

WordPress Loop Spielerei 3 einfach 6 Artikel anzeigen

<!--loop3 -->
 
<h3>einfach 6 Artikel nur Überschriften</h3>
<?php query_posts('showposts=6'); ?>
 
<ul><li><ul>
<?php while(have_posts()) : the_post(); if(!($first_post == $post->ID)) : ?>
<li><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></li>
<?php endif; endwhile; ?>
</ul></li></ul>

WordPress Loop Spielerei 4 aus einer Kategorie wieder nur ein Auszug

<!--loop4 -->
<h3>Aus der Kat Lesen 1 Artikel nur der Auszug</h3>
<?php rewind_posts();
	$my_query = new WP_Query('category_name=lesen&showposts=1');
  while ($my_query->have_posts()) : $my_query->the_post();
  	  $do_not_duplicate = $post->ID; ?>
      <h3><a href="<?php the_permalink() ?>" title="<?php the_title(); ?>">
        <?php the_title(); ?>
        </a></h3>
 
        <?php the_excerpt(); ?>
 
      <a href="<?php the_permalink() ?>" title="<?php the_title(); ?>">  mehr davon&raquo;&raquo;</a><br />
        <?php endwhile; ?>
        von  <?php the_author(); ?>
 
<!--loops end-->

Hier alle vier Loops und der Standard Loop von WordPress vereint

<?php get_header();?>
<!--index.php-->
<div>	
<!--loop1-->
<h3>Kat tipps-und-tricks 1 Artikel</h3>
<?php $top_query = new WP_Query('cat=6&showposts=1'); ?>
<?php while($top_query->have_posts()) : $top_query->the_post(); ?>
 
<p id="post-<?php the_ID(); ?>"><a href="<?php the_permalink() ?>" rel="bookmark"><strong><?php the_title(); ?></strong></a></p>
<?php the_excerpt(); ?>
 
<?php endwhile; ?>
 
<!--loop2 -->
<h3>alles ohne Kat tipps-und-tricks 5 Artikel</h3>
<?php query_posts('cat=-6&showposts=5'); ?>
<?php while(have_posts()) : the_post(); ?>
 
<p id="post-<?php the_ID(); ?>"><a href="<?php the_permalink() ?>" rel="bookmark"><strong><?php the_title(); ?></strong></a></p>
<?php the_excerpt(); ?>
 
<?php endwhile; ?>
 
<!--loop3 -->
 
<h3>einfach 6 Artikel nur Überschriften</h3>
<?php query_posts('showposts=6'); ?>
<ul><li><ul>
<?php while(have_posts()) : the_post(); if(!($first_post == $post->ID)) : ?>
<li><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></li>
<?php endif; endwhile; ?>
</ul></li></ul>
 
<!--loop4 -->
<h3>Aus der Kat Lesen 1 Artikel nur der Auszug</h3>
<?php rewind_posts();
	$my_query = new WP_Query('category_name=lesen&showposts=1');
  while ($my_query->have_posts()) : $my_query->the_post();
  	  $do_not_duplicate = $post->ID; ?>
      <h3><a href="<?php the_permalink() ?>" title="<?php the_title(); ?>">
        <?php the_title(); ?>
        </a></h3>
 
        <?php the_excerpt(); ?>
 
      <a href="<?php the_permalink() ?>" title="<?php the_title(); ?>">  mehr davon&raquo;&raquo;</a><br />
        <?php endwhile; ?>
        von  <?php the_author(); ?>
 
      </div>
 
<!--loops end-->
 
	<!--standard wordpress loop-->
<?php if (have_posts()) : ?> 	
	<?php while (have_posts()) : the_post(); ?>
 
			<?php the_time('d. m.  Y  ') ?>
			<h3  id="post-<?php the_ID(); ?>"><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link: <?php the_title(); ?>"><?php the_title(); ?></a>
			</h3>
			<?php edit_post_link('E','','|'); ?>
			<?php the_category(__(' und ')) ?>.
			<a href="<?php comments_link(); ?>" title="[<?php the_ID(); ?>]Comments"><span class="invisible">[<?php the_ID(); ?>">]</span><?php _e('Comments'); ?>:<?php comments_number('','(1)','(%)'); ?></a>.
 
	<?php the_content("&raquo;&raquo; " . the_title('', '', false)); ?>
 
<!--article end-->
 
<?php endwhile; ?>
<?php else : ?>
Leider nichts gefunden.
Nutze die Sitemap oder die Suche auf texto.de, um das Gewünschte doch noch zu finden.
<?php endif; ?>
<!--index php end-->
<?php get_footer(); ?>
bei Fragen fragen und vielleicht hast Du selber auch Loop Spielereien ;)
24 Kommentare (und 5 Pings/Tweets) zu: "WordPress CMS – Gestaltung der Home Seite-Loop Spielereien"
  1. Irre! Ich teste es morgen abend mal aus! Wenn das klappt, dann hättest du mit dieser Lösung verdammt vielen “Ungläubigen”, die der überzeugung sind, dass sich dieses Problem nur mit Joomla oder Drupal lösen ließe, eine lange Nase gezeigt!!

    Und ich werde mich revanchieren, versprochen!!
    martina-kausch.de

    edit von texto :freu mich, wenn Du wieder WordPress verwendest ;)

    Martina15.10.06 23:24 | # |

  2. Das mit dem Loop habe ich inzwischen soweit hinbekommen. Zwei Testrubriken habe ich inzwischen eingerichtet. Nun habe ich aber das Problem, dass wenn ich auf den Link klicke, ich aus dem Loop nicht rauskomme und die ?P nicht angezeigt bekomme. Kannst du mir dabei bitte bitte bitte helfen? Kann es sein, dass ich etwas übersehen habe?

    Ich danke dir.

    Liebe Grüße
    Martina

    P.S.: Ich habe die URl oben in “Webseite” eingegeben. Dann kommst du dahin.

    weitersprech.de

    edit von texto im März herum

    Du nutzt jetzt eine andere Blogsoftware, da hilft Dir dieses Tutorial auch nicht mehr ;)
    viel Spaß

    Martina17.10.06 20:57 | # |

  3. Hi Martina
    < >
    Ja die single.php wie besprochen ;)

    aber für etwaige spätere Leser hier nochmal

    lg

    texto18.10.06 16:00 | # |

  4. Ist es auch möglich, innerhalb eines Posts A Inhalte eines anderen Posts B mittels eines Loops zu integrieren?

    Zuperfly05.11.06 17:12 | # |

  5. Hi Zuperfly

    ich habe da keine Idee dazu.
    vielleicht wenn Du erklärst wozu?

    lg

    texto05.11.06 23:48 | # |

  6. Hallo,

    ich habe die Spielerei 1 mal verwendet und es funktioniert soweit auch alles. Ich müsste es aber so haben, dass die aktuellsten 3 Beiträge aus Kategorie 1 angezeigt werden, aber die Beiträge die zusätzlich noch in Kategorie 2 sind ausgeschlossen werden.

    Kann mir da vielleicht jemand weiterhelfen?
    (ich nutze WP 2.1.)

    Sabrina03.02.07 23:12 | # |

  7. Hi Sabrina
    Loop Teil 2
    da fand ich eine Lösung, Rückmeldung erbeten, ob es klappt

    lg

    texto04.02.07 15:11 | # |

  8. hi
    ich will in mein wordpress so gemacht werden das erklärt mehr.

    http://img205.imageshack.us/img205/3638/catsd4.gif

    hoffe euch alles gute

    :)

    mamphp12.05.07 06:12 | # |

  9. mamph was hast Du denn von den obigen Beispielen schon probiert?
    Oder verstehst Du die Sprache schlecht?
    Wären die Erklärungen in Englisch besser für Dich?

    lg

    texto12.05.07 10:05 | # |

  10. ok das mein index.php

    ……….
    was soll ich ändern damit oben nur post aus category (1) und unten weiter post aus alle kategorien zeigt?

    Danke

    mamphp12.05.07 13:38 | # |

  11. mamph ich habe Dir eine Email gesendet, weil hier kein Code reinkann- Sicherheit!

    lg

    texto12.05.07 14:49 | # |

  12. das meine richtige email Adresse

    vielen dank

    damit Du nicht in Spam erstickst habe ich die gelöscht;)

    mamphp12.05.07 15:21 | # |

  13. mamph
    Meine Lösung

    lg

    texto12.05.07 18:39 | # |

  14. Hallo,
    ich habe einzelne dieser loops schon mal in die Sidebar eingebaut und alles war gut. Jetzt habe ich drei hintereinander geschaltet (mit jeweils einem excerpt aus einer Kategorie). Angezeigt werden aber nicht dreimal ein excerpt, sondern dreimal drei excerpts. WP ist 2.3, URL der Startseite habe ich unter Website eingegeben. Kannst Du helfen?
    Viele Grüße, Joachim

    Joachim Ott19.02.08 18:10 | # |

  15. Hi Joachim kopiere den Code der Sidebar in ein normales Textdokument und sende es mir per Email(am Ende der Seite), da kann man auch Textdokumente anhängen

    lg

    texto24.02.08 22:20 | # |

  16. Ich versteh nur Bahnhof! :(

    Libelings Bier02.03.08 05:49 | # |

  17. Habe es probiert. Funktioniert einwandfrei, aber –
    Wie kann ich die Funktion NUR auf der Startseite anzeigen lassen? if(is_home) lässt die Sidebar verschwinden.

    Lorenz12.05.08 00:17 | # |

  18. danke =)

    thegrungeone28.09.08 22:26 | # |

  19. Danke für den CODE. Kommt mir gerade genau richtig!

    Ed28.12.08 20:14 | # |

  20. Hi,

    ich zeige unter dem Post in der einzelansicht noch einmal die 20 letzten Posts.

    Das Problem ist, dass dadurch doppelter content zustande kommt. Hast du vielleicht eine Idee, wie ich den angezeigten Post aus den letzten angezeigten Posts aussortieren kann?

    Gruß Fabian

    Fabian19.01.09 21:42 | # |

  21. Hi Fabian in den 1. Loop

    while.........
     $do_not_duplicate = $post->ID;

    in den 2. Loop dann

    while...........
    if( $post->ID == $do_not_duplicate )
    continue;

    lg

    texto20.01.09 12:06 | # |

  22. Vielen Dank klappt super ;)

    Fabian01.02.09 22:36 | # |

  23. geht das auch mit den neuesten bildern aus einer nextgen gallery….ich meine ich möchte gerne auf einer seite vielleicht statisch immer die neuesten bilder zeigen die eingestellt wurden…ähnlich fotocommunity.de

    Stefan04.04.09 08:40 | # |

  24. Hi Stefan – das ist dann eine Frage was die nextgen Gallery da kann – das kann ich so nicht sagen- am besten im forum.wordpress-deutschland.org fragen, da sind sicher einige NextGen Gallery user.

    lg

    texto04.04.09 09:38 | # |

Pings-Tweets
  1. WordPress CMS - Gestaltung der Home Seite-Loop Spielereien 2.Teil
    [...] Sabrina mag dies haben und fragte in einem Kommentar danach. Ich müsste es aber so haben, dass die aktuellsten ...
  2. WordPress CMS - Homeseite gestalten - Praxisbeispiel
    [...] mamph hat ein Problem und außerdem trennen uns simple Sprachschwierigkeiten. Da ein Bild im Kommentar gepostet wurde kann ich ...
  3. SEO Praxis Blog » Nachrichtenseiten als SEO betreiben
    [...] Die Idee dahinter ist relativ simpel, doch erschien mir zunächst die Umsetzung mit Wordpress als sehr kompliziert. Helfen konnte ...
  4. Helmeloh’s NotizBlog für Linux, Web 3.0 … » WordPress - eigener Loop
    [...] Der Loop WordPress CMS - Gestaltung der Home Seite-Loop Spielereien The Loop (englisch) WordPress: Loop selbst zusammen stellen ...
  5. Das Geheimnis der WP Template Hierarchie - Template Sheet zum Ausdrucken
    [...] Loop Spielereien [...]
  6. Tweets
  • Name and Mail are required.