WooCommerce devuelve 404 en páginas de categorías
Estoy tratando de configurar los enlaces permanentes de WooCommerce para obtener algo como:
example.com/shop/
=> Página de tienda que lista productosexample.com/shop/nombre-categoria/
=> Página de categoría que lista productos de una categoríaexample.com/shop/nombre-categoria/nombre-producto/
=> Página de producto que muestra detalles del producto
Pero tengo un error 404 no encontrado cuando intento abrir la página de categoría.
Lo que hice es:
Creé una página "Tienda" y la establecí como página de tienda en la configuración de WooCommerce. OK: La página funciona bien y muestra todos los productos.
En la configuración de enlaces permanentes de WordPress, establecí la base de categoría de producto como "shop". KO: Cuando intento mostrar una página de categoría, WordPress devuelve un error 404 (pero los enlaces se generan correctamente en la barra lateral de la tienda y el error 404 ocurre al hacer clic en ellos).
En la configuración de enlaces permanentes de WordPress, establecí el enlace permanente del producto como "/shop/%product_cat%". OK: Las páginas de productos se muestran sin problemas.
¿Hay alguna manera de resolver esto?

Ahora, puedo ver la página de listado de categorías, pero al hacer clic en un producto, obtengo un "error 400 bad request" porque la URL llamada es: /shop/%product-category%/product-name/ (%product-category% no se reemplaza por el nombre de la categoría)

¿Cuál es tu estructura de enlaces permanentes en "Ajustes comunes"? ¿Podrías enviarme una captura de pantalla completa de la página de configuración de enlaces permanentes?

No encuentro nada sobre este problema exacto. Para mí también, cuando agrego %product-category% a la base personalizada, soluciona las páginas de categoría, pero el nombre literal de la variable %product-category% aparece en los enlaces permanentes de los productos en lugar de la categoría (/shop/%product-category%/products-name/)

Resulta que no necesitas usar %product-category% ya que esto crea un problema con los enlaces permanentes, ese nombre de variable queda en los enlaces y no la categoría real del producto.
Simplemente deja Base de categoría en blanco, eso es lo que parece haber estado causando el conflicto del error 404. Con la configuración a continuación, todo funciona:
ejemplo.com/tienda/ => Página de tienda que lista los productos
ejemplo.com/tienda/nombre-categoria/ => Página de categoría que lista productos de una categoría
ejemplo.com/tienda/nombre-categoria/nombre-producto/ => Página de producto que muestra los detalles del producto

Dejar la base de categoría de producto en blanco ahora hace que Woo la fuerce a ser product-category

Probé la página:
- https://my-site-name.com/product-category/iphones/ - Obtuve ÉXITO
- https://my-site-name.com/product-category/iphones/iphone-16-pro/ - Obtuve 404 NO ENCONTRADO
El problema era que no había creado la categoría "iphone-16-pro" en WooCommerce, la solución es:
- Navegar a: Productos > Categorías
- Crear una categoría llamada: "iPhone 16 Pro", slug: "iphone-16-pro"
Quedó resuelto.
