WP Meta Query - 将LIKE / IN序列化字符串与数据库中的序列化数组进行比较

时间:2016-10-17 15:50:38

标签: php wordpress serialization

我正在尝试根据唯一的GUID引入内容。数据库存储在序列化数组中,无法更改。

示例记录将是:

a:1:{i:0;s:8:"16YL3332";}

我目前在WP中使用它来序列化字符串并使用以下get_posts

args函数中运行它
    $guid serialize(strval($_GET['guid'])); // var dump = string(15) "s:8:"16YL3332";"
    $args = array(
        "post_type" => "custom-post-type",
        "post_status" => "publish",
        "posts_per_page" => 1,
        "meta_query" => array( 
            "key" => "_fixtures",
            "value" => array($guid),
            "compare" => "LIKE"
        )
    );

我没有成功地带回适当的数据。 WP默认恢复在帖子类型中发布的最新内容。

1 个答案:

答案 0 :(得分:0)

为什么要将$ guid变量转换为数组?我不确定是否需要。如果您只是将其作为'value' => $guid传递,那会有效吗?

另外,请参阅以下质量检查以获取可能对您有所帮助的更多信息:

https://wordpress.stackexchange.com/questions/115833/how-do-i-search-an-array-stored-in-a-custom-field-using-wp-query