на экшен фильтр повесить нельзя, экшен это событие, фильтры нужны для модификации параметров принимаемых или возвращаемых функцией. Для применения фильтра мрдифицируемое должно иметь apply_filters( 'filter_name' , $array, бла бла бла всякое другое )
do_action( 'woocommerce_before_main_content' ); - это событие на которое повешены функции, сверху вежливо написано, какие функции на него повешены. В данном случае это хлебные крошки с приоритетом 20
Для посмотреть на woocommerce_breadcrumb, идем на гитхаб woocommerce и в нем ищем function woocommerce_breadcrumb, находим ее в файле
https://github.com/woocommerce/woocommerce/blob/75... и из ее кода видим, что,
1. filter / woocommerce_breadcrumb_defaults - можем поменять разметку
2. filter / woocommerce_breadcrumb_home_url - можем поменять адрес главной
3. action / woocommerce_breadcrumb - повешен метод который генерирует микроразмеку, можем его отключить, подключить свой, обработать данные дополнительно
4. wc_get_template( 'global/breadcrumb.php - можем переопределить шаблон вывода полностью