Jekyll: жидкий пользовательский оператор вывода для динамических классов CSS
Мой сайт Jekyll имеет два вида контента: персональный и профессиональный.
Я хотел бы подчеркнуть, какой тип контента в настоящее время читает посетитель с помощью динамических классов CSS:
- Если посетитель находится на странице, помеченной как "личная", мой
<main>
класс элемента должен быть"personal-content"
, - Если посетитель находится на странице, помеченной как "профессиональный", мой
<main>
класс элемента должен быть"professional-content"
, - В противном случае класс должен быть
"site-content"
,
В начале каждой страницы я создаю оператор вывода, который я устанавливаю в "personal"
или же "professional"
, например:
---
content: "personal"
----
Затем я использую это выражение вывода в своем теге так: (с отступом для чтения)
<main
{% if page.content %}
class="{{ page.content }}-content"
{% else %}
class="site-content"
{% endif %}
>
Однако я вижу только стиль из моего site-content
учебный класс. Что я сделал не так?
1 ответ
Благодаря комментариям выше, я исправил это!
Проблема заключалась в том, что я не использовал пользовательский оператор вывода, как мне казалось: {{ content }}
Jekyll уже используется для включения статей по уценке в макеты HTML.
Итак, я переключился {{ page.content }}
в {{ page.contenttype }}
и работает отлично!
Предостережение: мне также пришлось изменить значения, которые я давал в своем выводе. professional
работал нормально, но по какой-то причине personal
возвращался nil
, Поэтому я просто переключил их на pro
а также perso
и вуаля.