Por regla general, no tenemos ningún tipo de limitación en WooCommerce para que los clientes compren todos los productos que quieran y cuantos más mejor.
Con esto quiero decir que pueden comprar productos de diferentes categorías sin problemas. Es lo normal, claro.
Pero puede suceder que no nos interese que puedan comprar productos de varias categorías a la vez, ya sea por cuestiones de envío o por el motivo que sea.
Para ello podemos utilizar el siguiente Snippet de código que lo que hará será no permitir que se añada un producto de una categoría diferente a la categoría del producto que ya está en el carrito.
Si ya hay un producto en el carrito y el cliente intenta añadir al carrito un producto de otra categoría se mostrará un mensaje como el que vemos en la siguiente imagen:

El video
Este mensaje lo podéis cambiar para adaptarlo a vuestras necesidades.
Me podéis dejar un comentario con vuestra apreciaciones.
Saludos y mucho ánimo!!