Eliminar /categoria-producto/ Woocommerce sin pluging

Suscríbete a la Newsletter

Tabla de Contenidos

Para eliminar la base /categoria-producto/ de las URLs de las categorías de productos en WooCommerce sin usar un plugin, puedes seguir estos pasos.

Necesitarás agregar un fragmento de código en el archivo functions.php de tu tema hijo (o un plugin específico para tu sitio si prefieres).

Si quieres hacerlo con pluging aquí tienes este artículo.

Paso 1: Hacer una copia de seguridad

Antes de hacer cualquier cambio, es importante que realices una copia de seguridad completa de tu sitio web, incluyendo la base de datos y los archivos.

Paso 2: Editar el archivo functions.php

Agrega el siguiente código al archivo functions.php de tu tema hijo:

phpCopiar código// Eliminar base de categoría de productos en WooCommerce
add_filter('register_taxonomy_args', 'remove_product_category_base', 10, 2);
function remove_product_category_base($args, $taxonomy) {
    if ($taxonomy !== 'product_cat') {
        return $args;
    }

    $args['rewrite']['slug'] = '';
    return $args;
}

add_action('init', 'flush_rewrite_rules');

Paso 3: Actualizar enlaces permanentes

Después de agregar el código, debes actualizar los enlaces permanentes de tu sitio. Ve a Ajustes > Enlaces permanentes en tu panel de administración de WordPress y haz clic en el botón Guardar cambios sin realizar ninguna modificación. Esto actualizará las reglas de reescritura.

Paso 4: Probar las URLs

Verifica que las URLs de tus categorías de productos ahora no incluyan la base /categoria-producto/. Deben mostrarse directamente como tu-dominio.com/nombre-de-la-categoria.

Paso 5: Redirección (opcional)

Si tu sitio ya tiene tráfico y quieres redirigir las antiguas URLs con la base /categoria-producto/ a las nuevas URLs sin la base, puedes agregar este código adicional:

phpCopiar código// Redireccionar antiguas URLs de categorías de productos a las nuevas
add_action('template_redirect', 'redirect_old_product_category_urls');
function redirect_old_product_category_urls() {
    if (is_product_category()) {
        $current_url = home_url(add_query_arg(array(), $wp->request));
        $new_url = str_replace('/categoria-producto/', '/', $current_url);
        
        if ($current_url !== $new_url) {
            wp_redirect($new_url, 301);
            exit();
        }
    }
}

Con estos pasos, habrás eliminado la base /categoria-producto/ de las URLs de las categorías de productos en tu tienda WooCommerce sin utilizar un plugin.

AUTOR

ÚLTIMOS ARTÍCULOS

Descripción del Podcast con Carles y Xavi: En este episodio del podcast de VisibilidadON, descubre cómo Carles y Xavi revolucionaron el mercado con su proyecto…

La minificación de JavaScript es una técnica esencial para mejorar el rendimiento y la velocidad de carga de un sitio web. Dado que los archivos…

El debate sobre la capacidad de GoogleGoogle es uno de los principales motores de búsqueda en Internet y es utilizado por millones de personas en…

Suscríbete a la Newsletter

Recibe las últimas noticias y aprende de SEO y Google ADS