Привет коллеги!
Подскажите плиз, как найти решение такой задачи:
на одной странице шаблона надо выводить два потока информации:
1) посты определенной категории (с анонсами)
2) общая лента постов (с анонсами)
эти потоки разнесены "в пространстве" – располагаются в разных дивах
заранее благодарен!
Чтим Кодекс! Множественные Циклы
спасибо за оперативность! пошел читать!
by the way = а плагина нет на данный счет?
правильно ли я понял? =
1) в одном диве мы мы вставим
2) во втором слое будет
То есть с помощью
мы сбросим тот факт, что уже запустили один цикл?
Смотрите, перед каждым циклом вывода должен быть сформирован список постов. Это делает функция query_posts. Она выполняется неявно движком перед вызовом шаблона. Поэтому Цикл в обычном шаблоне выводит то что заказано (на что урл показал) без явного вызова query_posts. Если нам нужен другой список, то мы должны явно вызвать query_posts с нужными нам параметрами, а уже потом крутить Цикл. А то, как Вы написали, будет бегать по одному и тому же списку. Это имеет смысл, скажем, если в одном диве выводятся картинки от всех постов, а в другом – заголовки с анонсами тех же постов. Но Вы-то хотите разные списки? Значит, и формирование должно выполняться два раза – по одному на каждый Цикл вывода.
Тут, кстати, есть один интересный момент из серии "от перемены мест слагаемых…" Если сначала (по коду, не по лейауту страницы) выводить то что и должно быть, что урл прописал, то выборки постов (запросов к базе) будет две. А если сначала вывести дополнительную выборку – то три. Почему? Потому что мы 1)игнорируем результат первого запроса, 2)запрашиваем доп. список и 3)снова формируем основной список, который похерили в п.1.
Тогда получается так =
В первом диве выводим посты из категории history, 10 штук
Во втором диве выводим все посты, изо всех категорий количеством управляем из админки
Теперь правильно?
Близко.
1. Если это хозяйство находится в шаблоне рубрики history, то первый query_posts не нужен – движок его уже выполнил.
2. У меня есть сомнения, что query_posts() выбирает все посты из всех категорий. Что Кодекс говорит по этому поводу? 😉
3. rewind_posts() – зачем "перематывать", если и так указатель на начале списка? Указатель сдвигается на следующую запись запросом the_post().
хм… что-то я никак не воткну с
= вот же указание
вот отсюда
ну-у-у-у тогда для шаблона history – это Вы имели ввиду рубрику хистори? но ведь если это будет шаблон уникальный шаблон основанный на page.php – тогда все-таки надо!
про кодекс = в англоязе я не волоку, но что-то мне подсказывает :lol:, что придется, хотя бы, исключить одну категорию – ту же хистори
…таким же… Ну, ловите?
Да пофиг на чем основан, главное – на какой урл он отзывается.