Пеликан - Как я могу рендерить HTML-страницы вместо разметки? - PullRequest
0 голосов
/ 28 июня 2018

Я переделываю свой сайт Flask на Pelican, поскольку собираюсь начать вести блог. У меня уже есть html-файлы для некоторых конкретных страниц (например, для контактов, книг и т. Д.), В которых используются загрузочные карты и другие функции, которые недоступны при уценке (насколько я знаю).

Как я могу отрендерить их в цикле сборки. Там должна быть переменная конфигурации для этого? Я нашел TEMPLATE_PAGES, но это не сработало. Это должно быть возможно, верно?

Ответы [ 2 ]

0 голосов
/ 26 ноября 2018

Я пытался сделать то же самое, что и вы, и наконец нашел соответствующую документацию ( вы можете найти ее здесь , где она определяет переменную DIRECT_TEMPLATES):

DIRECT_TEMPLATES = ['index', 'categories', 'authors', 'archives']

Список шаблонов, которые используются непосредственно для визуализации контента. Обычно прямые шаблоны используются для генерации страниц индекса для коллекций контента (например, тегов и страниц индекса категории). Если коллекции тегов и категорий не нужны, установите DIRECT_TEMPLATES = ['index', 'archives']

Например, допустим, у вас есть файл my_file.html в вашем каталоге templates. Если вы хотите отобразить его как другие файлы шаблонов в вашей теме, а не использовать только Markdown, вы можете добавить элемент в список в переменной DIRECT_TEMPLATES, которую вам нужно будет определить в файле конфигурации (это pelicanconf). .py по умолчанию). Результат должен выглядеть примерно так:

DIRECT_TEMPLATES = [
    'index', 'categories', 'authors', 'archives',  # (default)
    'my_file'  # other HTML template to render
]

В таком случае my_file.html будет отображаться как любой другой HTML-файл с синтаксисом Jinja2 и всеми полезными вещами, которые вы хотите использовать.

Я знаю, что это поздно, но, надеюсь, кто-то (возможно, все еще вы!) Получит пользу от этого ответа. Это определенно очень хорошо скрытая особенность ...

0 голосов
/ 28 июня 2018

из их официальной документации

http://docs.getpelican.com/en/stable/content.html#writing-content

Pelican также может обрабатывать файлы HTML, заканчивающиеся на .html и .htm. Пеликан интерпретирует HTML очень простым способом, читая метаданные из мета-тегов, заголовок из тега заголовка и тело из тег body:

...