Есть сайт, где крупно выводятся 2 последних новости и списком остальные 4. Технически решено 2 блоками views - соответственно первый блок выводит 2 последние новости, второй блок - 4 последние, пропуская 2 элемента.
Все было хорошо, пока не появилась необходимость делать ещё и закреплённые новости.
Вопрос: как во views сделать так, чтобы блок, который пропускает 2 элемента, теперь пропускал 1 элемент? Т.е. учитывал количество закреплённых новостей в другом блоке?
Комментарии
ведь по какому-то признаку "закрепляются"? Вот и отфильтруйте их по этому признаку.
Если слева у меня выводятся 2 новости, которые закреплены, как в таком случае справа пропускать не 2, а 4 новости? В этом проблема, не могу понять как мне помогут фильтры?
Объясните внятно полный алгоритм отбора новостей. То у Вас нужно "сделать так, чтобы блок, который пропускает 2 элемента, теперь пропускал 1 элемент". Теперь почему-то нужно "пропускать не 2, а 4 новости". Если Вы думаете, что от одного взгляда на картинку всем сразу понятно что такое "закрепленные новости" и как они влияют на все остальные, то это не так. Опишите ВСЕ блоки и четкий алгоритм, по которому новости попадают в тот или иной блок.
Алгоритм: созданы 2 блока views, которые выводят последние новости, опубликованные на главной странице. Левый блок выводит 2 материала, правый 4, пропуская 2 первых элемента. В итоге у нас получается рабочая схема вывода новостей (см. скриншот).
Но появляется проблема, если в левом блоке мы захотим закреплять новости вверху списка. Для этого мы настраиваем порядок сортировки во views: сначала идут новости, которые закреплены, потом по дате добавления. Из правого блока закреплённые новости мы исключаем.
Важно, что мы не знаем сколько новостей будет закреплено. Возможны три варианта: 1 новость, 2 новости, либо их вообще не будет в закреплённых.
В случае, если пользователь сделает закреплёнными, например, 2 новости, в левом блоке не покажется 2 последние новости по дате добавления. Но и в правом блоке они не покажутся, поскольку там всегда пропускается 2 элемента.
Как быть?)
Теперь хотя бы понятно.
Зачем?
Почему нельзя в правом блоке сделать точно такой же порядок сортировки, как и в левом (сначала закрепленные, потом остальные по убыванию даты) и по-прежнему пропустить две строчки?
Будет же дублирование новостей? При таких настройках у меня выведутся 2 закреплённые новости, как и в левой части)
Почему они выведутся, если они пропустятся?
Точно ведь, они не пропадут с такими параметрами) Ответ на поверхности был, спасибо большое, почему-то сложно было это осознать))
Вижу только один вариант решения - добавить слева ещё один блок, который будет выводить только закреплённые новости, а если их нет - будет прятаться. Но хочется ограничиться именно тем количеством новостей, которое есть сейчас, т.е. не добавлять в случае закрепления ещё 2 позиции в левую часть