Для вывода записей в WordPress используется цикл, называемый “The Loop”. В общем виде он выглядит вот так:
<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>
<?php endwhile; ?>
Если перед циклом The LOOP написать функцию query_posts() с параметрами, приведенными ниже, то можно изменить вывод постов и страниц на ваше усмотрение.
query_posts(”cat=-3″) - Не показывать категорию с id=3
query_posts(”cat=-1,-2,-3″) - Не показывать категории, id которых равны 1, 2 и 3
query_posts(’cat=2,6,17′) - Вывести категории с id равным 2, 6 и 17
query_posts(’category_name=Staff Home’) - Вывести категорию с названием “Staff Home”
query_posts(’name=first post’) - Вывести один пост с названием “first post”
query_posts(’p=5′) - Вывести один пост, id которого равно 5
query_posts(’p=5′); global $more; $more = 0; - Вывести только первую часть (до тега more) поста с id=5
query_posts(’page_id=7′) - Вывести страницу с id=7
query_posts(’pagename=about’) - Вывести страницу с названием “about”
query_posts(’cat=18&showposts=5′) - Вывести 5 постов из категории с id=18
query_posts(’cat=3&orderby=date&order=ASC’) - Вывести посты из категории с id=3, сортировать по дате в хронологическом порядке(DESC - в обратном порядке)
query_posts(’posts_per_page=10‘) - Вывести 10 постов на страницу (при значении -1 выводит все посты)
query_posts(’cat=3&year=2007′) - Вывести посты из категории с id=3 за 2007 год
Мой блог находят по следующим фразам
- самые красивые сайты 2008
- WP темы магазин
- замена google analytics
- wordpress ajax перезагружать страницу
- themes wordpress world of warcraft
- текст обтекает картинку
- Две крупношрифтовых темы плюс бонус
- Две новых бесплатных премиум темы для WordPress
- Четыре легких WordPress темы с каруселькой и птицами, во как обозвал.
- Три бесплатных блоговых темы для WordPress
- Мега подборка симпатичных и бесплатных WordPress тем для Вашего блога


Комментарии (13)
Спасибо.
Очень полезно особенно там где вывод до тега more.
P.S.
Вам не говорили что правильно темы пишутся как “themes”
+ Ошибка в форме комментов.
Что такое название? Возможно имя?
Про ошибки я давно знаю, но исправлять пока не собираюсь.
Подскажите, пожалуйста. Как мне поправить ошибку. В header.php я вызываю констукцию:
query_posts(’posts_per_page=-1&cat=’.the_category_ID(false));
if (have_posts()) :
while (have_posts()) : the_post();
/* выбираю некоторые значения из дополнительных полей всех записей из рубрики, провожу некий расчёт */
endwhile;
else :
endif;
query_posts(’posts_per_page=10&cat=’.the_category_ID(false));
При переходе по постраничному навигатору каждый раз грузятся первые 10 постов. как мне от этого избавиться? Простите, если сумбурно. Помогите, пожалуйста
Напиши мне свою аську через форму обратной связи, разберемся.
Уже победил. Вот такой код:
$numpost=10;
if($paged>1) $offset=$numpost*($paged-1);
else $offset=0;//чтобы знать, с какой статьи начать, если это не первая страница
query_posts(’&offset=’.$offset.’&showposts=’.$numpost.’&posts_per_page=10&cat=’.the_category_ID(false));
Почему-то query_strings не стала работать :(
Ну и хорошо, что разобрался сам.
Да, но погемороиться пришлось много :) Надо было изначально на get_posts() делать. Но уже слишком много переписывать :(
не могу найти где в wp 2.6.5 смотреть id постов/страниц? подскажите, плиз)
В админпанели -> управление, наводим курсор на нужный нам пост/страницу/категорию и смотрим ссылку.http:// ваш_блог/wp-admin/post.php?action=edit&post=242 где 242 и есть нужный Вам id.
Пример:
хм… спасибо))) правда не очень удобно, верней совсем не удобно. В wp2.3.3 было лучше:( а какого-нибудь плагина для этого случайно нет?
Tanё4ek, а чем вам не удобно? Навели, посмотрели и всё :) Зачем плагины городить?
когда id отдельным столбцом - наглядней. Н-р, видно какие категории/страницы exclude/include куда-нить… удобней и привычней… ну что ж делать, буду привыкать по url)))))
А как с помощью этой конструкции сделать случайный вывод записи?
Буду признателен, если Вы оставите
упоминание об этом блоге у себя на сайте.
Оставить комментарий