I have this pretty standard script that looks for a preview or a report (custom post types) which have data stored against them (serialized array) taking the form of a guid
.
The guid is present on my report and not present on my preview (this is intended as I want to catch the failure).
However, when I run the script for preview, the get_posts
returns one post which seems to be the latest post published.
$args = array(
"post_type" => array($type),
"posts_per_page" => 1,
"post_status" => "publish",
"orderby" => "date",
"order" => "DESC",
"meta_query" => array(
"key" => "_fixtures",
"value" => $fixguid, // IN THIS CASE IT SHOULD BE 12AB1324
"compare" => "="
)
);
$posts = get_posts($args);
return $posts;
The report (which has the meta data 12AB1324
) is returned successfully but the preview returns the latest story which happens to have a value of 12AB3136
.
I suppose my question is:
Why does get_posts meta query return
a) the latest post and
b) a post with a guid that doesn't =
the given key
parameter.
Thanks.