Почему макет "пост" отсутствует во многих темах?

Я использовал плагин WordPress "WordPress to Jekyll Exporter", чтобы конвертировать мой блог WordPress в блог Jekyll. Все посты были на переднем плане, которые включали:

layout: post

Но все темы, которые я тестировал, кроме стандартных minima тема видимо не имеет этого post макет, потому что я получаю сообщения об ошибках, как это с сервера Jekyll для каждого сообщения:

Предупреждение о сборке: макет "post", запрошенный в _posts/2015-11-07-the-case-for-nested-methods-in-ruby.md, не существует.

Что тут происходит? Все ли темы предназначены для сайтов, которые не являются блогами?

Есть ли простое решение для этого?

Моя цель более высокого уровня - экспериментировать с темами, отличными от минимумов, чтобы найти что-то более привлекательное, чем по умолчанию. minima тема.

2 ответа

Решение

У Jekyll нет стандартного способа именования макетов, это дает преимущество гибкости, но иногда может вызвать путаницу.

Каждая тема может создавать свои собственные макеты, так что вы обнаружите, что изменение темы не работает так, как вы ожидали, на самом деле, большинство не работает, потому что обычно вы найдете default, page, а также post макеты, но если вы попробуете другую тему, их макеты, вероятно, будут называться по-разному.

Возьмем, к примеру, тему минимального размера, одну из самых популярных тем, которая имеет все эти макеты:

_layouts/
  ├── archive.html
  ├── archive-taxonomy.html
  ├── categories.html
  ├── category.html
  ├── collection.html
  ├── compress.html
  ├── default.html
  ├── home.html
  ├── posts.html
  ├── search.html
  ├── single.html
  ├── splash.html
  ├── tag.html
  └── tags.html

если вы просто измените название своей темы в конфигурации, я уверен, что он не будет использовать все эти макеты.

Вот почему вы должны настроить свой сайт в соответствии с требованиями каждой темы.

Заметка

Вам не нужно указывать макет темы в каждом посте, как правило, проще установить его в качестве основного по умолчанию в конфигурации, и в этом случае каждый пост будет использовать это:

defaults:
  -
    scope:
      path: ""
      type: "posts"
    values:
      layout: "post"

Я не знаю, о каких темах вы говорите, но вы можете найти темы здесь:

http://jekyllthemes.org Большинство тем, на которые я смотрю, имеют пост-макет.

если вам это действительно нужно и вы не можете его найти, вы можете создать свой собственный шаблон для сообщений, добавив post.html filo в папку шаблонов и просто вызвав макет по умолчанию.

---
layout: default
---

возможно, вы могли бы добавить ссылку на темы, о которых вы говорите, и если они есть на Github, вы всегда можете подать заявку на эту тему.

здесь звоните звоните новый выпуск для минимума:

https://github.com/jekyll/minima/issues

Другие вопросы по тегам