Diễn Đàn Hỗ Trợ FM
Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.


[Thủ thuật] Xóa bỏ /category/ và slug category cha khỏi đường dẫn category

Tác giả: - vào lúc:
Admin
Bài viết : 431
Points : 820
Like : 120
Punbb
Quản trị
Status : test
AdminACP
4/3/2018, 21:48
#1

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)


Code:

// Remove Parent Category from Child Category URL
add_filter('term_link', 'devvn_no_category_parents', 1000, 3);
function devvn_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 devvn_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', 'devvn_no_category_parents_rewrite_rules');

/*Sửa lỗi khi tạo mới category bị 404*/
function devvn_new_category_edit_success() {
    devvn_no_category_parents_rewrite_rules(true);
}
add_action('created_category','devvn_new_category_edit_success');
add_action('edited_category','devvn_new_category_edit_success');
add_action('delete_category','devvn_new_category_edit_success');
huyvip83
Bài viết : 236
Points : 384
Like : 66
Punbb
Cẩn thận
huyvip83MEM LV3
4/3/2018, 22:16
#2
tốt nhất cứ để nguyên bản chứ sửa chữa có ngày DEL forum....mấy lần thay đổi rồi có vẻ không ổn
phuot
Bài viết : 35
Points : 58
Like : 9
Punbb
phuotMEM LV1
4/4/2018, 10:44
#3
huyvip83 đã viết:
tốt nhất cứ để nguyên bản chứ sửa chữa có ngày DEL forum....mấy lần thay đổi rồi có vẻ không ổn

Del forum ? mã nguồn mở HTML của forumotion này khác với mã nguồn .Php của VBB mà ??
Kiwi
Bài viết : 289
Points : 601
Like : 160
Punbb
An toàn
Status : Đành vậy thế thôi
KiwiS-MOD
4/4/2018, 12:06
#4
huyvip83 đã viết:
tốt nhất cứ để nguyên bản chứ sửa chữa có ngày DEL forum....mấy lần thay đổi rồi có vẻ không ổn

Wordpress liên quan gì tới FM mà del forum Smile
Sponsored content
#5