По-моему, если используются произвольные таксономии, то вместо стандартной "category" нужно указывать название этой таксономии, напирмер "womans=pants", что бы использовать айдишник нужно тогда прописывать в расшширенном виде:
get_posts(array(
'post_type' => 'products',
'tax_query' => array(
array(
'taxonomy' => 'woman', //-- название таксономии
'field' => 'term_id', //-- отмечаем, что искать нужно по айдишнику
'terms' => 40 //-- сам айдишник
)
))
);
Подробнее:
https://codex.wordpress.org/Template_Tags/get_post...