- Описание функции
- Примеры использования
- Получение списка всех зарегистрированных типов записей
- Получение объектов типов записей с определенными аргументами
- Получение имен типов записей с определенным типом вывода
- Получение имен типов записей, удовлетворяющих определенной логической операции
- Вопросы и ответы
- Как получить список зарегистрированных типов записей?
- Как получить только имена зарегистрированных типов записей?
- Как получить объекты зарегистрированных типов записей?
- Как получить список зарегистрированных типов записей с определенными аргументами?
- Как получить список зарегистрированных типов записей с определенным типом вывода?
- Как получить список зарегистрированных типов записей, где хотя бы один аргумент должен соответствовать?
- Как получить список зарегистрированных типов записей, где ни один аргумент не должен соответствовать?
- Связанные элементы
Описание функции
Функция get_post_types() возвращает список всех зарегистрированных объектов типов записей (post types) в WordPress.
Использование
get_post_types( array|string $args = array(), string $output = 'names', string $operator = 'and' ): string[]|WP_Post_Type[] Функция get_post_types() принимает три необязательных параметра: $args, $output и $operator. Параметры указываются в виде ассоциативного массива или строкой.
$args(array|string) — Массив аргументов в формате ключ => значение, с которыми будут сравниваться объекты типов записей. По умолчанию: пустой массив.$output(string) — Тип возвращаемого результата. Принимает значения ‘names’ или ‘objects’. По умолчанию: ‘names’.$operator(string) — Логическая операция, которую нужно выполнить. ‘or’ означает, что достаточно, чтобы один элемент из массива соответствовал условиям; ‘and’ означает, что все элементы должны соответствовать условиям; ‘not’ означает, что ни один элемент не должен соответствовать условиям. По умолчанию: ‘and’.
Функция возвращает массив имен или объектов типов записей.
$args = array(
'public' => true, // Только публичные типы записей
'show_ui' => true, // Показывать интерфейс в админке
'has_archive' => true // Имеют архивную страницу
);
$post_types = get_post_types( $args, 'objects', 'or' );
foreach ( $post_types as $post_type ) {
echo '<p>' . $post_type->name . '</p>'; // Выводим имя типа записи
}
В данном примере мы используем функцию get_post_types() для получения всех типов записей, которые удовлетворяют определенным условиям. Мы указываем, что нужно получить только публичные типы записей, которые имеют интерфейс в админке и архивную страницу. Результаты сохраняются в переменную $post_types. Затем мы проходимся по каждому типу записи и выводим его имя.
Примеры использования
Получение списка всех зарегистрированных типов записей
$post_types = get_post_types();
print_r($post_types);
В данном примере мы используем функцию get_post_types() без передачи аргументов. Это позволяет получить список всех зарегистрированных типов записей. Результатом будет массив, содержащий имена всех типов записей.
Получение объектов типов записей с определенными аргументами
$args = array(
'public' => true,
'show_in_rest' => true
);
$post_types = get_post_types($args, 'objects');
print_r($post_types);
В данном примере мы передаем аргументы в функцию get_post_types(). В данном случае мы указываем два аргумента: public и show_in_rest. Это позволяет получить объекты типов записей, которые имеют указанные аргументы. Результатом будет массив объектов WP_Post_Type.
Получение имен типов записей с определенным типом вывода
$output = 'names';
$post_types = get_post_types(array(), $output);
print_r($post_types);
В данном примере мы передаем аргумент names в функцию get_post_types(). Это позволяет получить имена типов записей в виде массива строк. Результатом будет массив, содержащий имена всех типов записей.
Получение имен типов записей, удовлетворяющих определенной логической операции
$args = array(
'public' => true,
'show_in_rest' => true
);
$operator = 'or';
$post_types = get_post_types($args, 'names', $operator);
print_r($post_types);
В данном примере мы передаем аргументы public и show_in_rest в функцию get_post_types(), а также указываем оператор or. Это позволяет получить имена типов записей, которые удовлетворяют хотя бы одному из указанных аргументов. Результатом будет массив, содержащий имена таких типов записей.
Вопросы и ответы
Как получить список зарегистрированных типов записей?
Для получения списка всех зарегистрированных типов записей в WordPress можно использовать функцию get_post_types(). Она возвращает массив с именами типов записей или объектами типов записей.
Пример использования:
$post_types = get_post_types();
Как получить только имена зарегистрированных типов записей?
Если вам нужно получить только имена зарегистрированных типов записей, вы можете указать второй параметр функции get_post_types() как «names».
Пример использования:
$post_type_names = get_post_types('','names');
Как получить объекты зарегистрированных типов записей?
Если вам нужно получить объекты зарегистрированных типов записей, вы можете указать второй параметр функции get_post_types() как «objects».
Пример использования:
$post_type_objects = get_post_types('','objects');
Как получить список зарегистрированных типов записей с определенными аргументами?
Функция get_post_types() позволяет получить список всех зарегистрированных типов записей в WordPress. Она принимает необязательный аргумент $args, который является массивом или строкой с ключами и значениями для сравнения с объектами типов записей.
Пример использования:
$args = array(
'public' => true,
'show_in_nav_menus' => true
);
$post_types = get_post_types($args);
В данном примере мы получаем список всех типов записей, которые являются публичными и отображаются в меню навигации.
Как получить список зарегистрированных типов записей с определенным типом вывода?
Функция get_post_types() также принимает необязательный аргумент $output, который определяет тип вывода. По умолчанию используется значение ‘names’, которое возвращает массив с названиями типов записей.
Пример использования:
$output = 'objects';
$post_types = get_post_types('', $output);
В данном примере мы получаем список всех типов записей в виде объектов.
Как получить список зарегистрированных типов записей, где хотя бы один аргумент должен соответствовать?
Функция get_post_types() также принимает необязательный аргумент $operator, который определяет логическую операцию для сравнения аргументов. По умолчанию используется значение ‘and’, что означает, что все аргументы должны соответствовать.
Пример использования:
$args = array(
'public' => true,
'show_in_nav_menus' => true
);
$operator = 'or';
$post_types = get_post_types($args, 'names', $operator);
В данном примере мы получаем список всех типов записей, которые являются публичными или отображаются в меню навигации.
Как получить список зарегистрированных типов записей, где ни один аргумент не должен соответствовать?
Для этого можно использовать значение ‘not’ для аргумента $operator.
Пример использования:
$args = array(
'public' => false
);
$operator = 'not';
$post_types = get_post_types($args, 'names', $operator);
В данном примере мы получаем список всех типов записей, которые не являются публичными.
Функция
get_post_types()является мощным инструментом для получения списка зарегистрированных типов записей в WordPress. Она позволяет фильтровать типы записей по различным аргументам и получать результат в нужном формате. Это очень полезно для разработчиков, которые работают с типами записей и хотят получить их список с определенными условиями.
Связанные элементы
- Функция
register_post_type(): регистрирует новый тип записи. - Функция
unregister_post_type(): отменяет регистрацию типа записи. - Функция
get_post(): возвращает объект записи по ее идентификатору. - Хук
registered_post_type: вызывается после успешной регистрации нового типа записи. - Хук
post_type_labels_{$post_type}: позволяет изменить метки для определенного типа записи. - Хук
pre_get_posts: позволяет изменить параметры запроса для получения записей определенного типа. - Хук
the_post: вызывается перед выводом каждой записи определенного типа. - Класс
WP_Post_Type: представляет тип записи и содержит методы для работы с ним. - Класс
WP_Query: используется для выполнения запросов к базе данных и получения записей определенного типа.