get_the_terms()
получает термины, относящиеся к текущей записи. Если у вас отмечены "Бесплатно" и "Государственное", то функция вернет и их. В этой функции нет аргументов, позволяющих исключить термины из выборки на момент запроса в базу
Вы можете исключить необходимые термины при выводе во фронт, но не совсем понятен принцип, по которому вы хотите это сделать. Проще всего проверять на существование в произвольном массиве
$cur_terms = get_the_terms( $postID->ID, 'wpsl_store_category' );
$not_allowed = [ 'Бесплатно', 'Государственное' ];
if( is_array( $cur_terms ) ) {
foreach( $cur_terms as $cur_term ) {
if ( !in_array( $cur_term->name, $not_allowed ) ) {
echo $cur_term->name;
}
}
}