Die Blogseite: Beiträge, Kategorien und Seitenzahlen
Der Einstieg in den Blog: oben eine Überschrift und ein paar Zeilen über den Blog, darunter Kategorien, Beiträge und Seitenzahlen. Überschrift und Text bearbeitet dein Kunde wie eine normale Seite, die Beiträge erscheinen von selbst.
Das Ergebnis
<body wp-fields-group="Blog">
<header class="blog-hero">
<h1 wp="post-title">From the blog</h1>
<p class="blog-hero__lead" fld-area="Blog lead">Notes from the roastery: new beans, brewing tips and events.</p>
</header>
<nav class="blog-cats" wp-term-query="category">
<a class="blog-cats__link" href="#" wp="term-link"><span wp="term-title">Coffee</span> <span class="blog-cats__count" wp="term-count">5</span></a>
</nav>
<div class="posts" wp="posts">
<article class="post-card">
<a href="#" wp="post-link"><img src="images/news.jpg" alt="" wp="post-image"></a>
<p class="post-card__date" wp="post-date">October 1</p>
<h3><a href="#" wp="post-title-link">New autumn menu</a></h3>
<div class="post-card__text" wp="post-excerpt">Pumpkin latte is back, and so is the apple pie.</div>
</article>
</div>
<div class="posts__empty" wp="no-results">No posts yet</div>
<div class="pagination" wp-paginate="mid_size=1&prev_text=Newer&next_text=Older"></div>
</body>- Title: From the blog
- Posts page: Blog
- Blog pages show at most: 6 posts
Notes from the roastery: new beans, brewing tips and events.
Coffee 5 Kitchen 3 Events 2Überschrift und Einleitung gehören zur Seite „Blog“, Kategorien und Beiträge setzt WordPress selbst ein.
Schritt für Schritt
Benenne die Feldgruppe
wp-fields-group am
<body>der Seitearchive-post.html. Daraus entsteht das Template der Blogseite.<body wp-fields-group="Blog">
Überschrift und Einleitung
wp="post-title" über der Liste zeigt den Titel der Seite „Blog“, fld-area ist ein Feld dieser Seite. Dein Kunde bearbeitet beides wie eine normale Seite.
<h1 wp="post-title">From the blog</h1> <p class="blog-hero__lead" fld-area="Blog lead">Notes from the roastery: new beans, brewing tips and events.</p>
Kategorien mit Zählern
wp-term-query="category"geht die Kategorien des Blogs durch. Die Vorlage ist das erste Element: ein Linkwp="term-link", darin Name und Anzahl der Beiträge (wp="term-title",term-count).<nav class="blog-cats" wp-term-query="category"> <a class="blog-cats__link" href="#" wp="term-link"><span wp="term-title">Coffee</span> <span class="blog-cats__count" wp="term-count">5</span></a> </nav>
Die Beitragsliste
wp="posts"ist die Hauptliste der Seite: die Beiträge des Blogs der Reihe nach. Darin steht eine Beitragskarte, daneben ein Blockwp="no-results"für einen leeren Blog.<div class="posts" wp="posts"> <article class="post-card"> <a href="#" wp="post-link"><img src="images/news.jpg" alt="" wp="post-image"></a> <p class="post-card__date" wp="post-date">October 1</p> <h3><a href="#" wp="post-title-link">New autumn menu</a></h3> <div class="post-card__text" wp="post-excerpt">Pumpkin latte is back, and so is the apple pie.</div> </article> </div> <div class="posts__empty" wp="no-results">No posts yet</div>
Seitenzahlen
wp-paginate an einem leeren Block nach der Liste; die Beschriftungen „Newer“ und „Older“ stehen im Wert des Attributs.
<div class="pagination" wp-paginate="mid_size=1&prev_text=Newer&next_text=Older"></div>
Worauf es ankommt
- Welche Seite der Blog ist und wie viele Beiträge sie zeigt, steht unter Einstellungen → Lesen: „Beitragsseite“ und „Blogseiten zeigen maximal“.
- Kategorien ohne Beiträge erscheinen nicht in der Liste.
- Die Seite einer einzelnen Kategorie ist ein eigenes Template: siehe das Rezept „Kategorieseite“.
Typische Fehler
Das Build-Protokoll ist der Tab „Logs“ deines Projekts auf themeforge.pro; die kostenlose Markup-Prüfung zeigt dieselben Hinweise.
<div class="posts" wp="posts">
<article class="post-card">
<h3 wp="post-title">New autumn menu</h3>
</article>
<div class="pagination" wp-paginate="mid_size=1"></div>
</div>Seitenzahlen innerhalb des Listenblocks: Der Build hält sie für eine überzählige Karte und entfernt sie, auf der Website fehlen sie. Der Build schreibt das ins Protokoll.
<div class="posts" wp="posts">
<article class="post-card">
<h3 wp="post-title">New autumn menu</h3>
</article>
</div>
<div class="pagination" wp-paginate="mid_size=1"></div>Seitenzahlen als eigener Block nach der Liste.
<nav class="blog-cats" wp-term-query="category">
<a href="#" wp="term-title">Coffee</a>
</nav>wp="term-title" an einem Link gibt den Namen aus, aber die Adresse bleibt #. Das Protokoll meldet nichts.
<nav class="blog-cats" wp-term-query="category">
<a href="#" wp="term-title-link">Coffee</a>
</nav>term-title-link liefert Name und Adresse der Kategorie.