Как я добавляю числа, повторяющие этот цикл for, вместо {{i}} Обратите внимание, что этот цикл не имеет определенного ограничения, поскольку он получит все заказанные элементы независимо от их количества.
<img src = "https://billiger.de/sale?shop_id=Acaraa&oid = {{ order.order_number }}
{% for line_item in order.line_items %}
&aid_{{i}} = {{ line_item.product_id }}&name_{{i}} = {{ line_item.product.title }}&cnt_{{i}} = {{ line_item.quantity }}&val_{{i}} = {{ line_item.product.price | divided_by: 1.19 | times: line_item.quantity | money_without_currency}}
{% endfor %}
" width = "1" height = "1" border = "0" alt = "" />
Итак, петля должна выглядеть так
&aid_1=ARTICLE-ID-1&name_1=ARTICLE-NAME-1&cnt_1=ARTICLE-COUNT-1&val_1=ARTICLE-VALUE-1
&aid_2=ARTICLE-ID-2&name_2=ARTICLE-NAME-2&cnt_2=ARTICLE-COUNT-2&val_2=ARTICLE-VALUE-2
&aid_3=ARTICLE-ID-3&name_3=ARTICLE-NAME-3&cnt_3=ARTICLE-COUNT-3&val_3=ARTICLE-VALUE-3
PS: приведенный выше код будет использоваться в файле шаблона shopify
Спасибо
Я не буду публиковать ответ, потому что я предполагаю, что вы используете портированную библиотеку, но я не знаю, какая из них, как пара, подошла для меня в Google. Можете дать ссылку на библиотеку?
@DarraghEnright Мне очень жаль, что я не упомянул в своем вопросе, что мой вопрос связан с жидким файлом шаблона Shopify
Нет проблем, но вы ведь используете порт PHP? Это оно?






У объекта forloop есть несколько вспомогательных методов, в том числе для подсчета текущей итерации цикла:
forloop.index, который считает итерацию цикла, начиная с 1forloop.index0, который считает итерацию цикла, начиная с 0В вашем примере вы бы изменили свой код, чтобы использовать соответствующий метод вместо {{i}}; то есть:
<img src = "https://billiger.de/sale?shop_id=Acaraa&oid = {{ order.order_number }}
{% for line_item in order.line_items %}
&aid_{{forloop.index}} = {{ line_item.product_id }}&name_{{forloop.index}} = {{ line_item.product.title }}&cnt_{{forloop.index}} = {{ line_item.quantity }}&val_{{forloop.index}} = {{ line_item.product.price | divided_by: 1.19 | times: line_item.quantity | money_without_currency}}
{% endfor %}
" width = "1" height = "1" border = "0" alt = "" />
Я предполагаю, что вы хотите начать отсчет итераций с 1 здесь, но просто используйте forloop.index0, если вы хотите начать с 0.
Вот документация для forloop.index для официальной библиотеки Liquid Shopify (на Ruby).
Поскольку вы отметили свой вопрос как PHP, похоже, что вы используете порт библиотеки php-жидкость - он отображается в списке Shopify Жидкие порты.
Кажется, что этот порт не имеет какой-либо подробной документации, но если вы посмотрите на модульные тесты, вы увидите, что эти помощники forloop были реализованы.
Надеюсь это поможет :)
Ой! Исправлена опечатка в коде - я написал foreach.index, когда хотел написать forloop.index. Исправлено :)
Большое спасибо за ответ, у меня он отлично сработал :)
С удовольствием, рад, что помог :)
Я предполагаю, что это PHP-порт библиотеки шаблонов Shopify Liquid для Ruby? Если это так, то, если порт завершен, я предполагаю, что он должен иметь
forloop.index(или его сопутствующий компонент с нулевым индексомindex0).