Xóa category trong URL WordPress

Trong bài viết này mình sẽ hướng dẫn các bạn cách xóa category trong url wordpress và slug của category cha ra khỏi đường dẫn của category. Nếu bạn chỉ muốn xóa đường dẫn category thì có thể dùng Yoast Seo hoặc Rank Math để thực hiện việc này (Có hướng dẫn ở cách thứ 2). 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 thêm thao tác nào khác nhé

Xóa Category trong URL WordPress
Xóa Category trong URL WordPress

Code xóa Category trong URL WordPress 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 new url
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');
 
/*Fix 404 when create new category*/
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 nhé.

Cách xóa đường dẫn category bằng plugin Yoast SEO và Rank Math

Yêu cầu bắt buộc là bạn phải cài plugin Yoast SEO hoặc Rank Math.

Nếu bạn dùng Yoast SEO: 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
Xóa Category trong URL WordPress bằng Yoast SEO

Nếu bạn dùng Rank Math: Vào General Settings ~> Link ~> Chọn ON mục Strip Category Base ~> Save changes

Xóa Category trong URL WordPress bằng Rankmath SEO
Xóa Category trong URL WordPress bằng Rankmath SEO

Qua bài viết hướng dẫn Xóa Category trong URL WordPress này chắc hẳn bạn đã biết cách rồi đúng không? Chúc các bạn thành công.
Nếu trong quá trình làm mà bị lỗi thì hãy để lại comment bên dưới mình sẽ giải đáp nhé.

0 0 vote
Article Rating
hosting tot nen dung
guest
0 Comments
Inline Feedbacks
View all comments