Как сканировать заказ с Shopify Liquid - для индивидуального счета - PullRequest
0 голосов
/ 08 июня 2018

Мы производим счета-фактуры с приложением Shopify «Заказать принтер».и хотите настроить Счет.Например, если они купили «книгу» - мы хотим, чтобы она говорила «Наслаждайся своей книгой», а если «CD» - «Наслаждайся музыкой».

Я обнаружил, что могу проверить первуюпредмет, который они купили с «пределом: 1»:

{% for line_item in unfulfilled_line_items limit:1 %} 
    productType: {{ line_item.product.type }} -   prodtype:{{product.type}} <br/>
    {% if line_item.product.type contains "cd" %}
    its a CD <br/>
    {% else %}
    it's not a CD?)<br/>
{% endif %}
{% endfor %}

Но мне бы очень хотелось отсканировать весь массив product.type, чтобы определить, сколько существует каждого типа продукта - и вывести либо /, либо обасообщения - с множественным числом 's' в зависимости от ситуации.

Есть идеи?

Ответы [ 2 ]

0 голосов
/ 22 июня 2018

Спасибо @trowse - решены проблемы с нулями, они были связаны с проблемами и ограничениями кэша OrderPrinter.На всякий случай, если это кому-нибудь нужно.Вот наше решение:

<!--  count how many of each product type we are/have????? fullfilling -->
        {% assign count_cd = 0 %}
        {% assign count_bk = 0 %}
        {% for line_item in unfulfilled_line_items %}
            {% if line_item.product.type contains "cd" %}
                {% assign count_cd = count_cd | plus:1 %} 
            {% endif %}
            {% if line_item.product.type  contains "Book" %}
                {% assign count_bk = count_bk | plus:1 %} 
            {% endif %}
        {% endfor %}
<!--- end of counting -->

<!-- Enjoy.. message -->
    {% if {{count_cd > 0 %}
        Enjoy the music 
        {% if {{count_bk > 0 %}
            and the {{ count_bk | pluralize: 'book', 'books' }}<br/>
        {% endif %}
    {% else %}
        {% if {{count_bk > 0 %}
        Enjoy the {{ count_bk | pluralize: 'book', 'books' }}<br/>
        {% endif %}
    {% endif %}
0 голосов
/ 09 июня 2018

Вы идете по правильному пути, а не ограничиваетесь, хотя в основном хотите считать.

{% assign cd_count = 0 %}
{% assign book_count = 0 %}
{% for line_item in unfulfilled_line_items %}
    {% if line_item.product.type == "cd" %}
        {% assign cd_count = cd_count | plus: 1%}
    {% endif %}
    {% if line_item.product.type == "book" %}
        {% assign book_count = book_count | plus: 1 %}
    {% endif %}
{% endfor %}
cd count: {{ cd_count }}
book count: {{ book_count}}

Теперь, когда у вас есть счетчик, вы можете просто сделать оператор из числа счетчиков.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...