At the top of the shop page between breadcrumbs and product grid shop filter widgets may be enabled in the Theme Settings -> Product archive -> Shop filters. There is an option to keep this area always open and configure it to show the custom content – HTML block. In order to show a custom content (Promotional banner or other content), it is necessary to set the Shop filters content type to be Custom content and choose the created in advance HTML block from the Shop filters custom content drop-down list.
so there is very simple solution:
Appearance->Widgets->Shop filter
Add to shop filter “Woodmart stock status” mark there “on sale filter”
Then you can make route like this: shop/?stock_status=onsale
and now you have on sale items with filtering from product archive layout
Leaving it here maybe somebody also need this