Выходные данные Jekyll post.content окружены тегом ‹p›

Когда я печатаю содержимое поста с помощью

{{ post.content }}

Выводится так:

<p>Lorem ipsum...</p>

Как я могу удалить тег <p> при создании. Мне нужно, чтобы он был удален до того, как JavaScript начнет обрабатывать DOM.


person Ali Ismayilov    schedule 28.07.2013    source источник
comment
Мне нужно то же самое, но я не могу согласиться с вашим ответом :(   -  person Zentaurus    schedule 13.12.2013


Ответы (4)


Jekyll автоматически заключает содержимое в теги p. Вы можете удалить эти теги с помощью команды жидкости. Согласно документации Jekyll:

Поскольку Jekyll захватывает первый абзац, вам не нужно будет заключать отрывок в теги p, что уже сделано за вас. Эти теги можно удалить с помощью следующего, если вы предпочитаете:

{{ post.excerpt | remove: '<p>' | remove: '</p>' }}

Надеюсь это поможет!

person ughitsaaron    schedule 21.03.2014
comment
Это кажется немного подробным, если у вас много вывода в шаблоне. Есть ли способ полностью отключить перенос тега <p>? - person Trevor; 19.04.2016

Я изменил расширение почтового файла с .md на старый добрый .html.

person Ali Ismayilov    schedule 28.07.2013

Возможно, вы могли бы проверить этот ответ: Используйте <div> для переноса содержимого

Я пробовал, и это работает. Наверное, есть способ лучше, но я пока не придумал.

person Zentaurus    schedule 18.12.2013

Чтобы вывести целые страницы без тегов <p>, например, для вывода файла .txt или .json, создайте новый файл макета (например, _layouts/plaintext.html) со всем содержимым:

{{ content | remove: "<p>" | remove: "</p>" }}

Затем вызовите макет в заголовке соответствующих файлов, например:

---
permalink: sample.json
layout: plaintext
---
person Ken Irwin    schedule 31.08.2020