Ik denk dat je eigenlijk een PHP-probleem hebt. Wanneer u array($results_separated) . doet je maakt in feite een array van een string die er als volgt uitziet:"12,114,56," . Door dat te doen, maakt PHP een array zoals deze:
array(
0 => "12,114,56,"
)
En uiteraard kan WordPress geen berichten met zo'n ID vinden! Wat je wilt is eigenlijk een array als deze:
array(
0 => "12",
1 => "114",
2 => "56"
)
En eigenlijk is dat wat get_col() retourneert, dus je hoeft alleen maar $results door te geven naar set() functie:
$query->set ( 'post__in', $results );
BEWERKEN :Eigenlijk realiseerde ik me dat je probleem is wanneer je $wpdb->get_col(...) aanroept , omdat het de $query . verstoort u zult later uitvoeren... Die variabelen gebruiken enkele andere globale variabelen die waarschijnlijk worden overschreven, en daarom krijgt u geen resultaten...