在合并了两个wp_查询的结果之后,我尝试使用它们的ID数组作为新wp_查询的post_u-in参数。但出于某种原因,我得到了奇怪的结果(帖子总数不匹配)。据我所知,我无法将post ID数组转换为post_uuuin的正确格式(它接受ID数组)。
到目前为止我所做的:
echo count($first_query->posts); // returns 101
echo count($second_query->posts); // returns 201
$together = array_merge((array)$first_query->posts,(array)$second_query->posts);
echo count($together); // returns 302
var_dump($together); // returns: array(302) { [0]=> object(WP_Post)#6642 (24) { ["ID"]=> int(41) ["post_author"]=> string(1) "1" ["post_date"]=> string(19) "2005-04-01 05:49:22" ["post_date_gmt"]=> string(19) "2005-04-01 05:49:22" ["post_content"]=> string(0) "" ["post_title"]=> string(21) ...
到目前为止还不错。我已经转换为数组,以避免array_merge返回null,当其中一个数组是空的。现在我试图得到一个数组的ID的使用在一个新的wp_query,像这样:
$result_args = array(
'post_type' => 'post',
'post__in' => $ids, // array(10,11,12 and so on)
'ignore_sticky_posts' => 1,
'post_per_page' => -1
);
$result = new WP_Query($result_args);
我一直试图通过几种方式将$合在一起转换成整数数组:
$ids = wp_list_pluck($together, 'ID');
echo count($ids); // returns 302
var_dump($ids); // returns array(302) { [0]=> int(41) [1]=> int(44) [2]=> int(47) [3]=> int(89) ...
但是,在使用$ids作为post_uu的参数后,wp_query$结果返回的post总数错误。
echo count($result); // returns 10
var_dump($result_args); // returns array(4) { ["post_type"]=> string(4) "post" ["post__in"]=> array(302) { [0]=> int(41) [1]=> int(44) [2]=> int(47) ... int(969) } ["ignore_sticky_posts"]=> int(1) ["post_per_page"]=> int(-1) }
添加“字段”后=
echo count($together); // returns 302
var_dump($together); // returns array(302) { [0]=> int(41) [1]=> int(44) [2]=> int(47) [3]=> int(89)
但是,在错误的结果中使用post__的数组后,返回:
echo count($result); // returns 10
插入ID的数组将返回一个post__in无法处理的字符串。
echo count($result); // returns 0
也许我看错了方向,还有别的地方不对劲,但我想不出是什么,所以任何帮助都将不胜感激。
'post_per_page'
应该是“posts_per_page”现在一切正常。
我不明白为什么您不只是返回带有原始查询的ID,以避免所有这些转换WP_Query()
有一个fields
参数,可用于返回仅由post ID组成的数组。以最简单的形式,查询如下所示:
// This query returns an array() of post IDs, rather than full post objects
$args = array(
'fields' => 'ids',
);
$first_query = new WP_Query( $args );
从那时起,您可以执行标准的array_merge()
(这两个查询都将生成数组;因此您不需要将它们转换为(数组)
)。然后,这个合并的数组将只由后ID组成,并且可以直接在post__in
中用于另一个查询(如果需要)。
在“设计状态形状”一章中,文档建议将您的状态保留在由ID设置关键帧的对象中: 将对象中的每个实体以ID作为键存储,并使用ID从其他实体或列表中引用它。 他们接着说 将应用的状态视为数据库。 我正在处理过滤器列表的状态形状,其中一些过滤器将被打开(它们显示在弹出窗口中),或者具有选定的选项。当我读到“把应用程序的状态想象成一个数据库”时,我想把它们想象成一个JSON响应,因为它将从API(本身由数据
我目前正面临一个问题,就是如何将一个数组中的项放入JRadioButtons中。我有下面的代码,当我尝试将它们添加到JFrame时,会出现以下错误。 我也试着在以前的地方做 但出现以下错误
我有一个练习,找出出了什么问题。我会感激的帮助:) 编写将具有两个int类型数组和更大的返回数组(如果两个数组中的一个更大)以及与数组相同位置的元素的总和的代码。
块引号 null 爪哇
问题内容: 美好的一天, 我愿意检索Mysql中新插入的行的id值。 我知道有mysqli_insert_id函数,但是: 我无法指定表格 如果同时进行查询,则可能有检索错误ID的风险。 我正在使用node.js MySQL 我不想冒着查询最高ID的风险,因为有很多查询,这可能会给我一个错误的查询… (我的ID列是自动递增的) 问题答案: https://github.com/mysqljs/my
问题内容: 因为我有一个包含重复项的int数组的ArrayList,所以我想使用HashSet。不幸的是,我无法按需使用HashSet: 结果是: 有人可以告诉我我错了吗? 在此先感谢Dominique(java newbie) 问题答案: 数组不会在类中重写并实现,因此,只有当a1 == a2时,两个数组a1和a2 才被视为彼此相同,这在您的情况下是错误的。 如果使用s而不是数组,则将解决问题,