#shopify #shopify-template
#Shopify #Shopify-шаблон
Вопрос:
У меня есть следующая строка:
“Title
Content
Title
Content”
Я хочу извлечь каждый заголовок и каждый контент.
Я пытался использовать Shopify remove operator, но это становится очень длинным, и я не уверен, есть ли более простое решение?
Комментарии:
1. Привет! Не могли бы вы предоставить исходный код Liquid?
Ответ №1:
Использование split
фильтра может быть ответом здесь!
Однако для того, чтобы этот вариант использования работал, вам нужно добавить пользовательские разделители между каждым заголовком / содержимым блока, если у вас есть доступ к содержимому, это будет выглядеть примерно так:
<!-- Let's assume this content is coming from page.content -->
<h2>Title 1</h2><!-- inner-split --><p>content 1</p>
<!-- outer-split -->
<h2>Title 2</h2><!-- inner-split --><p>content 2</p>
<!-- this split the content into title/content blocks -->
{% assign content_blocks = page.content | split: '<!-- outer-split -->' %}
<!-- Loop through all blocks to split then extract title/content -->
{% for block in content_blocks %}
{% assign title_content = block | split: '<!-- inner-split -->' %}
<!-- title -->
{{ title_content[0] }}
<!-- content -->
{{ title_content[1] }}
{% endfor %}