如何获得用户元包含数组的数组

时间:2021-05-10 作者:hossein naghneh

我为用户提供了一个user\\u meta,其数组如下所示:

user_saved_posts = [31289,31482,27641]
我想让用户的user\\u meta包含如下数组中的一项:

goal_posts = [31289,31422,77641,41289,21482,17641]
如果用户有一个goal\\u posts项,则数组必须返回它们。我使用下面的代码,但如果我在user\\u meta中有搜索值,则此代码有效

$args = [
        \'meta_query\' => [
            [
                [
                    \'key\' => \'saved_posts\',
                    \'value\' => sprintf(\':"%s";\', 31289),
                    \'compare\' => \'LIKE\'
                ]
            ]
        ]
    ];
    get_users($args);

1 个回复
最合适的回答,由SO网友:hossein naghneh 整理而成

我用另一种方式解决了我的问题(WPDB).我为此编写了一个查询,如下所示:

$goal_posts = [31289,31422,77641,41289,21482,17641];
$sql = "SELECT * FROM wp_usermeta WHERE (meta_key = \'saved_posts\') AND (";
$sql .= implode(" OR ", $goal_posts);
$sql .= \') GROUP BY user_id\';
global $wpdb;
$users = $wpdb->get_results($sql);

相关推荐

Get full image array

当我使用高级自定义字段时,我可以返回上载的完整图像数组。是否有本机WordPress方法可以通过图像ID获取媒体库中任何图像的完整图像阵列?我可以找到方法来获取alt文本和特定的图像大小,但不能获取数组本身。。。