Метод 1: использование фильтра truncate
Liquid предоставляет встроенный фильтр truncate
, который позволяет сократить строку до указанной длины. Вот пример того, как его использовать:
{{ "This is a long sentence that needs to be truncated." | truncate: 20 }}
Вывод: «Это долгое отправление…»
Метод 2: собственный фильтр для усечения
Если вам нужен больший контроль над усечением строки, вы можете создать собственный фильтр Liquid. Вот пример реализации:
Шаг 1. Создайте новый файл с именем truncate_filter.liquid
и поместите в него следующий код:
{% capture truncated_string %}
{% if input_string.size > max_length %}
{{ input_string | slice: 0, max_length }}...
{% else %}
{{ input_string }}
{% endif %}
{% endcapture %}
{{ truncated_string }}
Шаг 2. В шаблоне Liquid импортируйте собственный фильтр и используйте его:
{% assign input_string = "This is a long sentence that needs to be truncated." %}
{{ input_string | truncate_custom: 20 }}
Вывод: «Это долгое отправление…»
Метод 3: усечение со ссылкой «Подробнее»
Если вы хотите предоставить ссылку «Подробнее» после усечения строки, вы можете использовать следующий подход:
{% assign input_string = "This is a long sentence that needs to be truncated." %}
{% assign max_length = 20 %}
{% if input_string.size > max_length %}
{{ input_string | slice: 0, max_length }}
<a href="#">Read More</a>
{% else %}
{{ input_string }}
{% endif %}
Вывод: «Это длинное отправленное сообщение… [Подробнее]»
Метод 4: усечение без сокращения слов
Иногда вам может потребоваться убедиться, что усеченная строка не обрезается в середине слова. Вот пример того, как этого можно добиться:
{% assign input_string = "This is a long sentence that needs to be truncated." %}
{% assign max_length = 20 %}
{% if input_string.size > max_length %}
{% assign truncated_string = input_string | truncatewords: max_length | strip %}
{{ truncated_string }}...
{% else %}
{{ input_string }}
{% endif %}
Вывод: «Это долго…»
Усечение строк в Shopify Liquid — обычное требование для различных аспектов вашего интернет-магазина. Используя фильтр truncate
, создавая собственные фильтры или добавляя ссылки «Подробнее», вы можете эффективно сокращать строки, сохраняя при этом визуально привлекательный дизайн. Учитывайте контекст и требования вашего конкретного варианта использования, чтобы выбрать наиболее подходящий метод. Приятного кодирования!