Добрый день друзья, подскажите пожалуйста, как мне реализовать следующую задачу:
требуется виджет вывод последних записей определенной рубрики в боковой колонке.
должно выглядеть примерно так:
Боковая панель 1
__________
|Новости |
| 1 новость |
| 2 новость |
| 3 новость |
|_________|
__________
|Статьи |
| 1 статья |
| 2 статья |
| 3 статья |
|_________|
В моем случае это не виджет, но вы можете включить добавить этот код в виджет для добавления произвольного кода или текста и использовать потом эту конструкцию в качестве виджета.
Для решения этой задачи используется функция query_posts, которая позволяет управлять содержимым цикла, в том числе и выводить записи из какой-либо избранной рубрики. Используя эту функцию, вы можете выводить избранный контент в любом месте Вашего блога – в основной части страницы или даже в сайдбаре.
Вот функция, которая выводит избранный контент:
где 2 это ID номер Вашей избранной рубрики, а 3 это количество записей из этой рубрики, которое будет выводиться.
В таком виде Вы можете вставить код в колонку. Если хотите поместить его на основной странице, то следует учитывать, что в этом случае данный блок следует окружить элементами стилей, которые используются в Вашем шаблоне.
Подобная конструкция может быть применена и для статей, если они у вас тоже выводятся в какой-нибудь рубрике. Если у вас статьи публикуются в качестве страниц, а не постов, то запись для вывода статей в этом случае будет иметь другой вид.
Был для такого дела мощный плагин по имени SideBlog.
Спасибо, Юрий Дмитриевич. Использовать плагин для новичков будет, конечно, проще.
Но с плагинами другая беда … при очередном обновлении версии движка, бывает, что часть плагинов перестает работать с этой новой версией, так как авторы плагинов не всегда следят за этими обновлениями версий.
Я вставил данный код в виджет для добавления произвольного текста, но ничего не заработал к сожалению( отборазился лишь пустой виджет
Значит, с виджетом в вашем случае эта конструкция не работает. Впрочем, у меня в виджете эта конструкция тоже не заработала, хотя и попробовал добавить к ней стиль.
А вот, когда я вставил всю эту конструкцию в код сайдбара собственного блога, отредактировав код файла сайдбара, то все получилось и отлично работает!
Я вставлял следующий код:
где <div id="sidecats"> – один из стилей, используемых в моем сайдбаре, в вашем случае вы должны заменить его на один из своих стилей. Ну, и соответственно, заменить номер рубрики на номер той, которую вы хотите выводить.
А не пробовали использовать не текстовый виджет, а специальный, обученный выполнять php-скрипты? 😉
Не знаю. Но виджета, который бы разрешал добавлять "Произвольный текст или PHP-код" в шаблоне моей темы нет, а виджеты "Рубрики", "Ссылки" или "Страницы", которые, я уверен, поддерживают PHP-код, не рассчитаны на добавление произвольного PHP-кода.
А такое удовольствие только плагинами делается. Например, http://wordpress.org/extend/plugins/php-code-widget/
А такое удовольствие только плагинами делается. Например, http://wordpress.org/extend/plugins/php-code-widget/[/quote]
Спасибо! Теперь буду знать. Как говорится, век живи – век учись! 🙂
Спасибо большое, оба способа мне подходят отлично!!! 🙂
Возникла проблема, воспользовался плагином http://wordpress.org/extend/plugins/php-code-widget/, и вашим кодом Калиостро
<?php query_posts(‘cat=2&showposts=3’); ?>
<ul>
<?php while (have_posts()) : the_post(); ?>
<li><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></li>
<?php endwhile;?>
</ul>
когда вставляю в правый сайт бар все работает отлично, когда в левый, на какую страницу и запись сайта не зайди отображается первая запись и рубрики которую я вставляю в виджет
Потому что "когда в левый", query_posts просто заменяет выбранные при инициализации посты на заказанные в параметрах функции. Правильнее использовать get_posts().
PS Левый/правый значения не имеет, имеет значение порядок выполнения.
а с какими параметрами мне надо указывать гет постс, если мне нужно вывести 3 первых записи из 1 категории
Ю.Б. же дал ссылку, где все это расписано:
небуду пладить много тем спрошу тут
у меня есть пользовательская post type katalog-rastenii
есть таксономия этой post type klass. Я создал мутку или рубрику rubrika1.
Немогу вывести посты только этой метки/рубрики. ссылка этой метки/рубрики гласит так edit-tags.php?action=edit&taxonomy=klass&tag_ID=250&post_type=katalog-rastenii
вот цикл
все разобрался спасибо
$args = array(‘post_type’ => ‘katalog-rastenii’, klass’ => ‘rubrika1’, ‘order’=>’ASC’, ‘posts_per_page’=>’3’, ‘paged’ => get_query_var(‘paged’));
query_posts($args); ?>