有几种方法可以回答这个问题,这取决于您试图实现的目标。一般来说,您需要创建两个查询:一个用于获取所有公共帖子,另一个用于获取所有公共分类法和术语。由于术语对象和post对象的格式不同,将两者都放在一个数组中并不实用,但是您可以从生成的两个数组中构建自己的数组。
WordPress查询可以在中构造a number 属于different ways 使用WP_Query parameters. 或者,其他各种函数为您执行预构建的查询。
简而言之,您可能正在寻找类似的东西(未经测试-可能需要一些工作):
$public_taxonomies = get_taxonomies( Array( \'public\' => true ) );
$terms = get_terms( $public_taxonomies ); // Get ALL terms from all public taxonomies
$public_post_types = get_post_types( Array( \'public\' => true ) );
$posts = get_posts( Array(
\'posts_per_page\' => -1 // Get ALL posts...
\'post_type\' => $public_post_types, // ...of the public post types...
\'post_status\' => \'publish\' // ...that are published.
) );
请注意,这对性能有很大影响,尤其是在大型网站上。。。一次返回站点上几乎所有的内容不是一件小事。最好使用
pagination parameters, 或者使用
Transients API, 如果可能的话。