Para hacer que un producto de la tienda sea público (cualquiera puede comprar, no es necesario tener cuenta ni loguearse):
- El producto tiene que tener marcada la categoría “Venta libre” (*ver código abajo), entonces será accesible a visitantes no logueados
- ENTRADA BLOG.
- Para anunciar en la portada de la WEB el producto en cuestión se puede crear una entrada.
- Para que esta entrada sea visible en portada a visitantes marcar la categoría “Noticias 452”
- El contenido de esta entrada será el que aparezca en portada.
- Para que al pinchar en en portada la entrada redirija directamente al producto (no a la entrada), marcar la entrada con Formato: Enlace (*activar en opciones de pantalla). De esta forma el primer link que aparezca en el contenido será el usado para redirigir (si queremos que redirija a un producto hay que poner el link de dicho producto)
configuration.php:
/*--------------------------------------------------------------------------------------------------------*/ // Woocommerce. Oculta productos que no son de la categoria venta-libre si el usuario no está logueado /*--------------------------------------------------------------------------------------------------------*/ // https://businessbloomer.com/woocommerce-remove-specific-category-shop-loop/ // https://stackoverflow.com/questions/34684881/hide-products-from-users-who-are-not-logged-in-using-tags/34689768#34689768 add_action( 'woocommerce_product_query', 'show_hide_products_category_shop' ); function show_hide_products_category_shop( $q ) { $tax_query = (array) $q->get( 'tax_query' ); if ( !is_user_logged_in() ) { $tax_query[] = array( 'taxonomy' => 'product_cat', 'field' => 'slug', 'terms' => array( 'venta-libre' ), // Category slug here 'operator' => 'IN' ); } /* else { $tax_query[] = array( 'taxonomy' => 'product_cat', 'field' => 'slug', 'terms' => array( 'ukens pose' ), // Category slug here 'operator' => 'NOT IN' ); } */ $q->set( 'tax_query', $tax_query ); }