Xóa category trong URL WordPress

Home » Xóa category trong URL WordPress

Trong bài viết này chúng ta cùng nhau xóa /category/ và slug của category cha ra khỏi đường dẫn của category. Nếu bạn chỉ muốn xóa category trong URL WordPress thì có thể dùng Yoast Seo hoặc Rank Math để thực hiện việc này (Có hướng dẫn ở cuối bài). Còn bạn muốn xóa bỏ cả 2 thì hãy dùng đoạn code bên dưới. Khi đã dùng đoạn code bên dưới thì bạn không cần bất cứ plugin nào khác và không cần thực hiện tthêm thao tác nào khác nha

Xóa category trong URL WordPress

Code xóa bỏ /category/ và slug category cha không dùng plugin

Việc bạn cần làm là copy đoạn code bên dưới vào file functions.php trong theme đang sử dụng sau đó vào update lại permalink tại (Settings ~> Permalink ~> Save change)

// Remove Parent Category from Child Category URL
add_filter('term_link', 'giappham_no_category_parents', 1000, 3);
function giappham_no_category_parents($url, $term, $taxonomy) {
    if($taxonomy == 'category'){
        $term_nicename = $term->slug;
        $url = trailingslashit(get_option( 'home' )) . user_trailingslashit( $term_nicename, 'category' );
    }
    return $url;
}
// Rewrite url mới
function giappham_no_category_parents_rewrite_rules($flash = false) {
    $terms = get_terms( array(
        'taxonomy' => 'category',
        'post_type' => 'post',
        'hide_empty' => false,
    ));
    if($terms && !is_wp_error($terms)){
        foreach ($terms as $term){
            $term_slug = $term->slug;
            add_rewrite_rule($term_slug.'/?$', 'index.php?category_name='.$term_slug,'top');
            add_rewrite_rule($term_slug.'/page/([0-9]{1,})/?$', 'index.php?category_name='.$term_slug.'&paged=$matches[1]','top');
            add_rewrite_rule($term_slug.'/(?:feed/)?(feed|rdf|rss|rss2|atom)/?$', 'index.php?category_name='.$term_slug.'&feed=$matches[1]','top');
        }
    }
    if ($flash == true)
        flush_rewrite_rules(false);
}
add_action('init', 'giappham_no_category_parents_rewrite_rules');
 
/*Sửa lỗi khi tạo mới category bị 404*/
function giappham_new_category_edit_success() {
    giappham_no_category_parents_rewrite_rules(true);
}
add_action('created_category','giappham_new_category_edit_success');
add_action('edited_category','giappham_new_category_edit_success');
add_action('delete_category','giappham_new_category_edit_success');

Trong quá trình sử dụng có bất kỳ lỗi gì hãy để lại phản hồi bên dưới mình sẽ giải đáp nha.

Hướng dẫn cách chỉ xóa bỏ /category/ bằng plugin Yoast SEO

Yêu cầu bắt buộc là bạn phải cài plugin Yoast SEO . Khi cài mới các cài đặt nâng cao sẽ bị ẩn đi. Vì vậy bạn cần vào mở nó lên bằng cách sau:

Bước 1: Vào wp admin SEO ~> tab Features ~> Chọn Enabled mục Advanced settings pages ~> Save changes

Bước 2: Vào SEO ~> Hiển thị khi tìm kiếm ~> Nguyên tắc phân loại ~> Tìm đến mục đường dẫn danh mục và chọn gỡ bỏ

Xóa category trong URL WordPress bằng Yoast SEO

Hướng dẫn cách chỉ xóa bỏ /category/ bằng plugin Rank Math

Các bạn vào Rank Math ~> General Setting ~> Links ~> Strip Category Base ~> ON

Xóa category trong URL WordPress bằng Rank Math

Chúc các bạn thành công

Bài viết liên quan

Đăng ký mẫu nha khoa Sài Gòn
Đăng ký mẫu Nha khoa BS Thương
Đăng ký mẫu Nha khoa Ánh Tuyết

ĐĂNG KÝ THIẾT KẾ WEBSITE