- substr: documentation ( source)
- implode: documentation ( source)
<?php
//global $blog_id;
$blog_id = 10; //might use $site_id instead
$params = array(
'publication_or_data' => 'Publication',
'category' => 'Published/Forthcoming',
);
$query = "select * from wp_{$blog_id}_posts where id in (";
foreach($params as $param => $values) {
if(substr($query, -13) != 'where id in (') {
$query .= " and id in (";
}
$query .= "select post_id from wp_{$blog_id}_postmeta where meta_key = '{$param}' and meta_value ";
if(is_array($values)) {
$query .= "in ('";
$query .= implode("','",$values);
$query .= "')";
}
else {
$query .= "= '{$values}'";
}
$query .= ")";
}
echo $query;