Bueno, no veo la manera de filtrarlo desde el query. Tampoco busqué mucho porque se me ocurrió algo que no es mejor, pero que soluciona tu problema, o al menos eso me parece.
Prueba este código:
Código PHP:
Ver originalif (have_posts()) : while (have_posts()) : the_post();
$post_categories = wp_get_post_categories(get_the_ID());
if (count($post_categories)==1 && $post_categories[0]==3) continue;
La solución que propongo consiste en filtrar el post posteriormente a haber sido traído desde la base de datos a través de la consulta.
La función
wp_get_post_categories devuelve un array con los IDs de las categorías del post actual. El parámetro que se le pasa es el ID del post.
Luego viene el
if. Si hay una única categoría en este post y esa categoría es la 3, saltamos el paso del ciclo con
continue y seguimos al próximo post.
Espero que te sirva.
Cuéntame como te fue
Saludos!