Cuando gestionas una tienda online tienes que permitir a los usuarios con perfil de gestor de tienda crear productos, y esto implica asignar categorías a los productos.
Por defecto WordPress (ni WooCommerce tampoco) no impide que se asigne más de una categoría de producto por producto, pero habrá tiendas online en las que querrás controlar esta situación, casi siempre por cuestiones de SEO, evitar que los usuarios asignen más de una categoría a los productos.
Pues bien, es muy fácil de conseguir con un sencillo código, este:
/* Evitar asignar más de una categoría por producto en el editor */ add_action( 'admin_head', 'ayudawp_una_cat_por_producto', 9999 ); function ayudawp_una_cat_por_producto() { $screen = get_current_screen(); $screen_id = $screen ? $screen->id : ''; if ( ( 'add' === $screen->action && 'product' === $_GET['post_type'] ) || in_array( $screen_id, array( 'product', 'edit-product' ) ) ) { wc_enqueue_js( " $('#product_cat-all input:checkbox').change(function () { var max = 1; var count = $('#product_cat-all input:checked').length; if (count > max) { $(this).prop('checked', ''); alert('Lo siento, solo puedes elegir una categoría de productos. Si no te convence la primera que elegiste desmárcala y elige la que sea más adecuada.'); } }); " ); } }
El código puedes añadirlo en:
- Al final del archivo
functions.php
del tema hijo activo. - En un plugin propio, usado para personalizaciones (recomendado, al no ser un código dependiente del tema)
Del código puedes personalizar la cadena alert
para poner tu propio texto de aviso.
Una vez añadido el código y guardados los cambios, cuando un usuario quiera añadir más de una categoría verá un mensaje de alerta animándole a elegir bien la categoría que quiere asignar al producto, no dejándole añadir más de una.
¿Te gustó este artículo? ¡Ni te imaginas lo que te estás perdiendo en YouTube!