Как из стандартных хлебных крошек woocommerce убрать ненужные категории?
По второму вопросу - потому что по умолчанию хлебные крошки выводятся для вложенности от 1 уровня. Для главной, где вложенность 0 - не выводятся вообще. Изучите класс woocommerce/includes/class-wc-breadcrumb.php чтобы понимать как они вообще работают. Смотрите код тут.
Обратите внимание на хук woocommerce_get_breadcrumb - в нем вам доступны элементы хлебных крошек в виде массива, который вы можете модифицировать - добавить/удалить/заменить определенный элемент (или элементы).
Также, у вас есть темплейт для вывода хлебных крошек woocommerce/templates/global/breadcrumb.php, который вы можете скопировать себе в папку темы (сохраняя вложенность пути, смотрите заголовок-комментарий шаблона и документацию Woo) и сделать свой вывод. Смотрите код файла тут.
Что касается двух категорий товаров - в хлебных крошках выводится первый термин, полученный функцией wc_get_product_terms( $post->ID, 'product_cat', array( 'orderby' => 'parent', 'order' => 'DESC' ) );. Есть небольшой хак - переименовать вашу "служебную" категорию так, чтобы она прилетала второй в списке. При необходимости - изменить параметр сортировки через хук. Либо вообще в этом хуке отфильтровать "служебную" категорию совсем (но надо поковырять conditionals чтобы убрать ее только в нужных местах):function change_breadcrumb( $main_term ) {

    // Проверьте что пришло
    var_dump( $main_term );

    return $main_term;

}
add_filter( 'woocommerce_breadcrumb_main_term', 'change_breadcrumb' );
Подскажите, а что нужно прописать и изменить, чтобы придать хлебным крошкам другой вид на страницах атрибуты и метки?
В данный момент:
Метка: Главная / Товары с меткой “Название метки”
Атрибут: Главная / Товар Наименование атрибута / Имя атрибута
Нужно:
Метка: Главная / Название метки
Атрибут: Главная / Наименование атрибута / Имя атрибута

Ну и в идеале, в URL убрать product-tag:
Название сайта/Название метки