Просьба просветить! Есть решение

Просьба подсказать бесплатно) почему не работает такое условие корректно. Ни с одним статусом нет вхождения. Что у меня не так?

{if $order.state->getName() != ('Сборка' or 'Отгружен')}
{/if}

Вот такое работает

{if $order.state->getName() != ('Сборка')}
{/if}

Как правильно прописать условие для разных статусов заказа?

Спасибо!

3 ответа

  • 4
    waResearchLab Эксперт Разработчик 27 января 2023 11:07 # Решение

    {if $order.state->getName() != 'Сборка' && $order.state->getName() != 'Отгружен'}
        .............
    {/if}

    или

    {if !in_array($order.state->getName(), ['Сборка', 'Отгружен'])}
        .............
    {/if}

    • 0
      fieldvis fieldvis 27 января 2023 11:16 #

      Гениально!

      • +3
        replicant replicant 27 января 2023 11:43 #

        Оптимально использовать даже не $order.state->getName(), а сразу $order.state_id и всякие условия, например в шаблонах, стоить именно через это.

Добавить ответ

Чтобы добавить комментарий, зарегистрируйтесь или войдите