Перейти к содержимому
themeforge
RU
Начать бесплатно
Меню
  1. Главная
  2. Рецепты секций
  3. Страница блога
Рецепт 5 шагов

Страница блога: лента, рубрики и номера страниц

Главная страница блога: сверху заголовок и пара строк о блоге, ниже — рубрики, записи и номера страниц. Заголовок и текст клиент правит как обычную страницу, записи появляются сами.

Что получится

Вёрстка archive-post.html
<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>
В админке Pages → Blog
Pages → Blog
  • Title: From the blog
Blog
Blog lead Notes from the roastery: new beans, brewing tips and events.
Settings → Reading
  • Posts page: Blog
  • Blog pages show at most: 6 posts
На сайте страница блога
From the blog

Notes from the roastery: new beans, brewing tips and events.

Coffee 5 Kitchen 3 Events 2
New autumn menu Oct 12
Why we roast on Mondays Oct 5
Newer 1 2 3 Older

Заголовок и вводный текст — у страницы «Blog», рубрики и записи WordPress подставляет сам.

Пошагово

  1. Назовите группу полей

    wp-fields-group на <body> страницы archive-post.html — из неё собирается шаблон страницы блога.

    <body wp-fields-group="Blog">
  2. Заголовок и вводный текст

    wp="post-title" над лентой выводит заголовок страницы «Blog», fld-area — её поле. Клиент правит их как обычную страницу.

    <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>
  3. Рубрики со счётчиками

    wp-term-query="category" перебирает рубрики блога. Образец — первый элемент: ссылка wp="term-link", внутри неё название и число записей (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>
  4. Лента записей

    wp="posts" — главный список страницы, записи блога по порядку. Внутри — карточка записи, рядом — wp="no-results" на случай пустого блога.

    <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>
  5. Номера страниц

    wp-paginate на пустом блоке после ленты; подписи «Newer» и «Older» — в значении атрибута.

    <div class="pagination" wp-paginate="mid_size=1&prev_text=Newer&next_text=Older"></div>

Что важно

  • Какая страница служит блогом и сколько записей на ней — Настройки → Чтение: «Страница записей» и «Показывать не более».
  • Рубрики без записей в списке не показываются.
  • Страница одной рубрики — отдельный шаблон, см. рецепт «Страница рубрики».

Частые ошибки

Журнал сборки — вкладка «Логи» вашего проекта на themeforge.pro; те же замечания показывает бесплатная проверка разметки.

Так не надо
<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>

Номера страниц внутри блока ленты: сборка считает их лишней карточкой и убирает, на сайте их нет. Сборка пишет об этом в журнал.

Так правильно
<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>

Номера — отдельным блоком после ленты.

Так не надо
<nav class="blog-cats" wp-term-query="category">
  <a href="#" wp="term-title">Coffee</a>
</nav>

wp="term-title" на ссылке выводит название, а адрес остаётся #. Журнал промолчит.

Так правильно
<nav class="blog-cats" wp-term-query="category">
  <a href="#" wp="term-title-link">Coffee</a>
</nav>

term-title-link — и название, и адрес рубрики.

Атрибуты в рецепте

Когда будете готовы

Посмотрите админку WordPress своего сайта до оплаты.