1. 首页
  2. WordPress 函数手册

get_post_types()

get_post_types( array|string $args = array(), string $output = ‘names’, string $operator = ‘and’ )

获取所有注册的post类型对象的列表。
Get a list of all registered post type objects.

目录锚点:#说明#参数#返回#源码#笔记


说明(Description)

另见函数 register_post_type()


参数(Parameters)

参数 类型 必填 说明
$args (array | string) 可选 要与post类型对象匹配的key=>值参数数组。
$output (string) 可选 要返回的输出类型。接受post类型“names”或“objects”。
$operator (string) 可选 要执行的逻辑操作或’表示数组中只有一个元素需要匹配;’和’表示所有元素都必须匹配;’不’表示任何元素都不能匹配。

返回(Return)

(string[]|WP_Post_Type[])Post类型名称或对象的数组。


源码(Source)

/**
 * Get a list of all registered post type objects.
 *
 * @since 2.9.0
 *
 * @global array $wp_post_types List of post types.
 *
 * @see register_post_type() for accepted arguments.
 *
 * @param array|string $args     Optional. An array of key => value arguments to match against
 *                               the post type objects. Default empty array.
 * @param string       $output   Optional. The type of output to return. Accepts post type 'names'
 *                               or 'objects'. Default 'names'.
 * @param string       $operator Optional. The logical operation to perform. 'or' means only one
 *                               element from the array needs to match; 'and' means all elements
 *                               must match. Accepts 'or' or 'and'. Default 'and'.
 * @return array A list of post type names or objects.
 */
function get_post_types( $args = array(), $output = 'names', $operator = 'and' ) {
	global $wp_post_types;

	$field = ('names' == $output) ? 'name' : false;

	return wp_filter_object_list($wp_post_types, $args, $operator, $field);
}
更新版本 源码位置 使用 被使用
2.9.0 wp-includes/post.php:1265 38 1 function

笔记(Notes)

$args的参数值包括:
输出一个仅包含公共自定义发布类型的列表
检索作为对象的命名post类型

get_post_types() 为WP2原创文章,链接:https://www.wp2.cn/functions/get_post_types/

发表评论

您的电子邮箱地址不会被公开。