Параметры для вывода продуктов из предпочитаемой категории

Одно из возможных применений вычисляемого поля — определение категории, которую пользователь чаще всего просматривает или покупает.

Рассмотрим способ вывода продуктов из такой категории с помощью параметров шаблонизатора.

Задача

Отправить клиентам, которые давно не совершали покупок, подборку с популярными новинками из их любимой категории.

MostBoughtCategory-user
Пример клиента с вычисленной категорией.

Как собрать параметр

Чтобы обратиться к карточке клиента, используем базовый параметр Recipient→ открываем список дополнительных и вычисляемых полей параметром CustomField → выбираем нужное вычисляемое поле → получаем параметр вида Recipient.CustomField.<Вычисляемое поле>

Для вывода доступны поля по категории:

Recipient.CustomField.MostBoughtCategory

Чтобы отобрать рекомендации, параметром Recommendations переходим в список доступных алгоритмов по категории → выбираем нужный → получаем параметр вида Recipient.CustomField.<Вычисляемое поле>.Recommendations.<Алгоритм>.Take(<Количество элементов коллекции>)

Для вывода доступны все поля по рекомендованным товарам:

Recipient.CustomField.MostBoughtCategory.Recommendations

Так как собранный параметр является коллекцией, для обращения к продуктам в нем нужно использовать цикл for...end for.

Пример верстки

Выведем в рассылке название категории, а также название, цену и картинку рекомендованных из него товаров.

Упрощенная верстка:

Подборка новинок из вашей любимой категории ${Recipient.CustomField.MostBoughtCategory.Name} 
        
        @{for item in Recipient.CustomField.MostBoughtCategory.Recommendations.RecoCategory.Take(4)}
            ${item.Name}
            ${item.Price}
            ${item.Url}
            <a href="${item.Url}"><img src="${item.PictureUrl}"></a>
        @{end for}
        

При использовании табличной верстки для рекомендаций:

Подборка новинок из вашей любимой категории ${Recipient.CustomField.MostBoughtCategory.Name}
        
        <table>
        @{for row in tableRows(Recipient.CustomField.MostBoughtCategory.Recommendations.RecoCategory.Take(4), 2)} 
            <tr>
            @{for cell in row.cells} 
                <td>
                @{if cell.value != null} 
                    ${cell.Value.Name}
                    ${cell.Value.Price}
                    ${cell.Value.Url}
                    <a href="${cell.Value.Url}"><img src="${cell.Value.PictureUrl}"></a>    
                @{end if} 
                </td>
            @{end for}
            </tr> 
        @{end for}
        </table>
        

Пользователь получит в письме:

MostBoughtCategory-example