Вы можете создать фрагмент, например, под названием shortcode.liquid
В фрагменте вы вставили следующий код:
{%- capture open_tag -%}[#{{tag}}]{%- endcapture -%}
{%- capture close_tag -%}[/{{tag}}]{%- endcapture -%}
{%- assign text_content = content | split: open_tag | last | split: close_tag | first -%}
{%- capture remove_shortcode -%}{{open_tag}}{{text_content}}{{close_tag}}{%- endcapture -%}
{%- assign new_content = content | remove: remove_shortcode -%}
И вы называете этот фрагмент так:
{%- include 'shortcode' content: product.content, tag: 'size' -%}
Куда вы передаете контент (в данном случае это product.content ) и шорткод, на который вы хотите настроить таргетинг (в данном случае это размер )
После вызова фрагмента у вас есть две переменные:
{{text_content}}
это вернет содержимое между шорткодами
{{new_content}}
- это вернет новый контент, но с удаленным шорткодом
Внимание! Этот фрагмент будет работать только для одного экземпляра одного и того же шорткода, a.k.a У вас не может быть двух экземпляров size
шорткода.