Как отсортировать части в моем виджете? - PullRequest
0 голосов
/ 08 июня 2018

У меня следующая проблема,

Я создал виджет, который имеет основную функцию, чтобы показать мне все мои новости.В новостях есть поле с именем «priority», которое может быть целым числом в диапазоне от 0 до 100.

Главное, что я хочу сделать, это отсортировать по «priority».

Следующий HTML-код - это мои news-widgets / views / widget.html

{% for piece in data.widget._pieces %}
<div class="commercial_widget_wrapper">
    <a href="{{ piece.detaillink }}">
        <div class="commercial_widget_inner row">
            <div class="commercial_widget_thumbnail">
                {% set image = apos.images.first(piece.thumbnail) %}
                {% if image %}
                <img class="bild" src="{{ apos.attachments.url(image, { size: 'full' }) }}"/>
                {% endif %}
                {% if image == null %}
                <div class="bild">
                {{apos.area(piece, 'thumbnail', {edit:false, size: 'full'})}}
                </div>
                {% endif %}
            </div>
            <div class="commercial_widget_label">
                <b>{{piece.title}}</b><br>
                {{piece.text}}
            </div>
        </div>
    </a>
    <div style="clear:both;"></div>

</div>
{% endfor %}

Я добавил виджет в show.html страницы с

{{apos.singleton(data.page, 'news', 'news', {})}}

Мой вопрос: как и где я могу отсортировать результаты?Я пытался найти что-то с помощью апостроф-курсоров , но в документах отсутствует хороший пример.

1 Ответ

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

Этот вопрос SO иллюстрирует, где вы можете взаимодействовать с данными каждого виджета до того, как он попадет в ваш шаблон

Как получить доступ к данным виджета в помощнике

Перехватываяв методе load вашего виджета у вас будет доступ ко всем связанным элементам.Затем вы можете использовать что-то вроде sortBy от lodash, чтобы переупорядочить массив на основе свойства каждого элемента.

...