Say I have an array of checkbox choices associated with a post (a custom field) stored in the database in serialized form. On my site, I present users with the same checkboxes and let them make their choices to "filter" out posts according to their choices. If as little as one of their choices matches a posts choices, that post should be displayed.
$args['meta_query'] = array( array( 'key' => 'choices', 'value' => $_POST['choices'], 'compare' => 'IN', ));
As the data in the DB is in serialized form, I hoped that the WP_Query was smart enough to understand that it needed to unserialize the serialized data in the DB before attempting to match. This was not the case, and I am considering submitting this to the WP Trac and see if it can be added as a feature in future releases.
My question is whether I have any options here, other than to store my data in another way (which at the moment seems difficult as I am using the plugin Advanced Custom Fields to store it). I looked through meta_query with meta values as serialize arrays, and the answers there pointed me towards storing my data in another way. I hope I can avoid that.