Как вывести список произвольных записей WordPress, исключая текущую


Вы можете изменить аргументы функции WP_Query, чтобы адаптировать запрос к своим потребностям. Например, вы можете указать другой тип записей или добавить дополнительные параметры.

Как получить список записей в WordPress

Для получения списка записей в WordPress можно воспользоваться функцией get_posts. Она позволяет получить произвольное количество записей и указать различные параметры поиска и сортировки. Рассмотрим пример использования:

ПараметрОписание
‘numberposts’
‘order’Порядок сортировки записей. Может быть ‘ASC’ (по возрастанию) или ‘DESC’ (по убыванию). По умолчанию сортировка идет по дате публикации.
‘orderby’Поле, по которому нужно сортировать записи. Может быть ‘date’ (по дате публикации), ‘title’ (по заголовку) и другие.

Пример кода для получения списка последних 10 записей, отсортированных по дате публикации в убывающем порядке:

$args = array('numberposts' => 10,'order' => 'DESC','orderby' => 'date');$posts = get_posts($args);foreach ($posts as $post) {echo '<h3>' . $post->post_title . '</h3>';echo '<p>' . $post->post_content . '</p>';echo '<hr>';}

Таким образом, используя функцию get_posts и настраивая соответствующие параметры, можно получить список записей в WordPress и вывести их произвольным образом на странице.

Вывести список произвольных записей на сайте

В WordPress существует возможность создавать произвольные записи с помощью функции register_post_type(). После создания таких записей их можно вывести на сайте с использованием функций get_posts() или WP_Query().

Для начала необходимо создать произвольную запись. Для этого можно воспользоваться плагинами, такими как Custom Post Type UI или Advanced Custom Fields. После создания записей можно использовать следующий код, чтобы вывести список произвольных записей:


$args = array(
'post_type' => 'custom_post_type',
'post_status' => 'publish',
'posts_per_page' => -1,
'post__not_in' => array( get_the_ID() ) // исключаем текущую запись
);
$custom_posts = get_posts( $args );
foreach ( $custom_posts as $post ) : setup_postdata( $post ); ?>


Таким образом, с помощью данного кода можно легко вывести список произвольных записей на сайте, исключая текущую запись.

Исключить текущую запись из списка

Если вам необходимо вывести список произвольных записей в WordPress и исключить текущую запись из этого списка, можно воспользоваться функцией get_posts() и добавить параметр exclude с идентификатором текущей записи.

Пример кода:

global $post;// Получаем идентификатор текущей записи$current_post_id = $post->ID;// Параметры запроса$args = array('post_type' => 'post',  // Тип записей'exclude'  => $current_post_id,  // Исключаем текущую запись'numberposts' => -1,  // Вывести все записи);// Получаем список записей$posts = get_posts($args);foreach ($posts as $post) :setup_postdata($post);endforeach;// Сбрасываем глобальную переменную $postwp_reset_postdata();

Использовать функцию get_posts()

Для этого нужно передать массив параметров в функцию, указав, какие записи нужно получить исключая текущую. Например:

$current_post_id = get_the_ID();$params = array('post__not_in' => array($current_post_id),// другие параметры запроса);$posts = get_posts($params);foreach ($posts as $post) {echo '<h3>' . get_the_title($post) . '</h3>';echo '<p>' . get_the_excerpt($post) . '</p>';}

В этом примере в переменную $current_post_id записывается идентификатор текущей записи с помощью функции get_the_ID().

Далее, в массиве $params указывается параметр post__not_in, который принимает массив с идентификатором текущей записи. Таким образом, записи с указанными идентификаторами будут исключены из результатов запроса.

Затем вызывается функция get_posts(), которая возвращает массив объектов записей, удовлетворяющих условиям запроса.

Таким образом, используя функцию get_posts() и указывая параметр post__not_in, можно легко вывести список произвольных записей, исключая текущую.

Параметры функции get_posts()

Функция get_posts() в WordPress позволяет получить список произвольных записей из базы данных. Она имеет множество параметров, с помощью которых можно настроить выборку и исключить текущую запись.

Основные параметры функции get_posts():

  • numberposts: определяет количество записей для выборки;
  • offset: позволяет пропустить определенное количество записей;
  • category: указывает категорию, из которой нужно выбрать записи;
  • orderby: определяет сортировку записей (по дате, заголовку и т.д.);
  • order: устанавливает порядок сортировки (по возрастанию или убыванию);
  • exclude: исключает определенные записи из выборки;
  • include: включает только определенные записи в выборку.

Для исключения текущей записи из списка можно использовать параметр exclude. Для этого необходимо передать ID текущей записи в массив exclude. Например, если ID текущей записи равен 5, то параметр exclude будет выглядеть следующим образом:

'exclude' => array(5)

После применения этого параметра функция get_posts() вернет список записей без текущей.

Использование параметров функции get_posts() позволяет настроить выборку произвольных записей в WordPress и исключить текущую запись, обеспечивая гибкость и возможность показа нужной информации на вашем сайте.

Уточнить категории или теги записей

Чтобы вывести список произвольных записей в WordPress, исключая текущую, можно использовать специальные функции и параметры запросов.

Одним из способов уточнить список записей является фильтрация по категориям или тегам. Для этого можно использовать функцию get_categories или функцию get_tags.

Функция get_categories возвращает массив объектов, представляющих категории записей. Вы можете указать параметры запроса, такие как исключение текущей категории или определенные категории:

$args = array(
'exclude' => get_queried_object_id(), // исключить текущую категорию
'include' => '1,2,3', // включить определенные категории
);
$categories = get_categories($args);

Функция get_tags работает аналогично, но возвращает массив объектов, представляющих теги записей:

$args = array(
'exclude' => get_queried_object_id(), // исключить текущий тег
'include' => '4,5,6', // включить определенные теги
);
$tags = get_tags($args);

После получения списка категорий или тегов, вы можете использовать их для формирования запроса к базе данных и получения списка записей с помощью функции get_posts или WP_Query:

$args = array(
'category__in' => wp_list_pluck($categories, 'term_id'), // получить записи из указанных категорий
'tag__in' => wp_list_pluck($tags, 'term_id'), // получить записи с указанными тегами
'post__not_in' => array(get_the_ID()), // исключить текущую запись
);
$posts = get_posts($args);

Теперь вы можете использовать полученные записи для отображения списка на вашей странице.

Добавить комментарий

Вам также может понравиться