Slug redirection | WordPress.org

[ad_1]

Hi @alprio,

Unfortunately, there is no out-of-box solution available. A few years ago I prepared a custom snippet that should do exactly what you are trying to do. Here is the code:

function pm_force_404_on_native_permalinks() {
global $wp_query, $pm_query, $permalink_manager_uris;

// 1. Get the queried object
$object = get_queried_object();

// 2. Use it only if no custom permalink is detected
if ( ! empty( $pm_query['id'] ) ) {
return;
}

// 3. Check if the custom permalink exists for requested item
if ( ! empty( $object->post_type ) ) {
$has_custom_uri = $permalink_manager_uris[ $object->ID ];
}

// 4. Force "404" error page
if ( ! empty( $has_custom_uri ) ) {
$wp_query->query = $wp_query->queried_object = $wp_query->queried_object_id = null;
$wp_query->set_404();
status_header( 404 );
nocache_headers();
$pm_query = '';

// Disable canonical redirect
remove_action( 'template_redirect', 'wp_old_slug_redirect' );
remove_action( 'template_redirect', 'redirect_canonical' );
}
}
add_action( 'wp', 'pm_force_404_on_native_permalinks', 5 );

Thread Starter
alprio

(@alprio)

Hello again ,

Thank you for the snippet.
I did some tests and it seems that is working correctly for products.
is it possible to expand this snippet for /product-category/ slug too ?

Hi @alprio,

Yes, as this requires Pro version to work, please send the support request with your license key here:
https://permalinkmanager.pro/contact/

 

This site will teach you how to build a WordPress website for beginners. We will cover everything from installing WordPress to adding pages, posts, and images to your site. You will learn how to customize your site with themes and plugins, as well as how to market your site online.

Buy WordPress Transfer