Как отобразить случайные сообщения в WordPress
Доброго времени суток. Сегодня мы остановимся на таком вопросе, как отобразить определенное количество случайных сообщений не прибегая к плагинам в WordPress. Т. е. внедрим php код отображения произвольного количества случайных записей в шаблон.
И так. Давайте вставим следующий код:
<li><h2>Произвольные записи: </h2> <ul> <?php <p dir="ltr">$posts = get_posts('orderby=rand&numberposts=5');</p> <p dir="ltr">foreach($posts as $post) {</p> ?> <li><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a> </li> <?php <p dir="ltr">}</p> ?> </ul> </li>
В то место шаблона, где мы хотим вывести пять произвольных записей.
Разберем данный код. На html я останавливаться не буду, а вот функции: get_posts(), the_permalink(), the_title() мы рассмотрим подробнее.
Функция get_posts()
get_posts — это простая функция, которая создает несколько петель (механизмов the_loop). Данная функция извлекает список записей по заданным критериям.
В качестве параметров принимает массив значений get_posts($array):
<?php $args = array( 'numberposts' => 5, 'offset' => 0, 'category' => , 'orderby' => 'post_date', 'order' => 'DESC', 'include' => , 'exclude' => , 'meta_key' => , 'meta_value' => , 'post_type' => 'post', 'post_mime_type' => , 'post_parent' => , 'post_status' => 'publish', 'suppress_filters' => true ); ?>
где:
- numberposts — количество выводимых постов
- offset — отступ
- category — список категорий из которых выводить или не выводить посты
- orderby — сортировка выводимых постов, может принимать следующие значения: ‘author’, ‘category’, ‘content’, ‘date’, ‘ID’, ‘menu_order’, ‘mime_type’, ‘modified’, ‘name’, ‘rand’, ‘status’, ‘title’, ‘parent’, ‘password’, ‘type’
- order — сортировка по убыванию или по возрастанию
- include — указываются id постов, которые обязательно надо включить в список отображаемых постов
- exclude — указывается id постов, которые не включать в список отображения постов.
- meta_key и meta_value — получить посты имеющие указанное произвольное поле (meta_key) со значением (meta_value)
- post_type — тип записи, принимает следующие значения: post, page, attachment, any
- post_mime_type — указывается тип прикрепления, который надо вывести, принимает следующие значения: application/zip, application/pdf, image/jpeg, image/png, image/gif, audio/mpeg
- post_parent — выводит только дочерние посты к данному id поста
- post_status — список статусов записи, которые надо вывести, принимает следующие значения: publish, private, draft, future, inherit или пусто — все статусы
- suppress_filters — подавления фильтра для query_posts, чтобы не возникло путаницы
Теперь, зная функцию get_posts, мы можем вывести не пять, а десять произвольных постов. Для этого нужно изменить значение параметра numberposts с 5 на 10. Или мы хотим вывести 5 последних постов, тогда функции get_posts ничего не надо передавать.
Функцию the_permalink() мы подробно рассмотрели в статье “Теги для работы с ссылками в WordPress ”
Функцию the_title() мы подробно рассмотрели в статье “Теги для работы с постами в WordPress”
Как видите вывод записей по определенным критериям можно сделать без дополнительных расширений. А вот, что лучше выбирать Вам: использовать ли дополнительный плагин или просто добавить код в шаблон.