Remove ‘/resource/’ prefix from the Resource slugs – Chipmunk

Remove ‘/resource/’ prefix from the Resource slugs

Paste this code into the Child Theme’s functions.php file (you can find the base for it here). Make sure you activate the child theme instead of the main Chipmunk package.

function chipmunk_remove_slug( $post_link, $post, $leavename ) {
    if ( 'resource' != $post->post_type || 'publish' != $post->post_status ) {
        return $post_link;
    }

    $post_link = str_replace( '/' . $post->post_type . '/', '/', $post_link );

    return $post_link;
}
add_filter( 'post_type_link', 'chipmunk_remove_slug', 10, 3 );


function chipmunk_parse_request( $query ) {
    if ( ! $query->is_main_query() || 2 != count( $query->query ) || ! isset( $query->query['page'] ) ) {
        return;
    }

    if ( ! empty( $query->query['name'] ) ) {
        $query->set( 'post_type', array( 'post', 'resource', 'page' ) );
    }
}
add_action( 'pre_get_posts', 'chipmunk_parse_request' );

Please remember to refresh the WordPress permalinks after that! Go to Settings > Permalinks and click “Save Changes”.