Wordpress

Hướng dẫn code PHP để thiết lập slug của danh mục sản phẩm trong WooCommerce chỉ 1 cấp

Nếu bạn đang sử dụng WooCommerce và muốn thiết lập slug của danh mục sản phẩm chỉ 1 cấp, bạn cần phải sửa mã nguồn trong file functions.php của theme hiện tại đang sử dụng. Dưới đây là các bước chi tiết:

Bước 1: Đăng nhập vào trang quản trị WordPress

Để bắt đầu, đăng nhập vào trang quản trị WordPress của bạn.

Bước 2: Truy cập vào trình chỉnh sửa chủ đề

Truy cập vào menu "Appearance" (Giao diện) và chọn "Theme Editor" (Trình chỉnh sửa chủ đề) hoặc "Editor" (Trình chỉnh sửa).

Bước 3: Tìm file functions.php

Tìm kiếm file functions.php trong danh sách các tập tin của theme hiện tại của bạn, sau đó mở nó.

Bước 4: Thêm đoạn mã vào cuối file functions.php

Sau khi mở file functions.php, thêm đoạn mã sau vào cuối file:

// Remove parent category from WooCommerce product category URLs
add_filter('term_link', 'remove_parent_category_slug', 10, 3);

function remove_parent_category_slug($url, $term, $taxonomy) {
    if ($taxonomy == 'product_cat') {
        $url = site_url() . '/' . $term->slug;
    }
    return $url;
}

// Rewrite rule to fix 404 errors for product categories
add_filter('rewrite_rules_array', 'fix_404_rewrite_rules_for_product_categories');

function fix_404_rewrite_rules_for_product_categories($rules) {
    $new_rules = array();
    $terms = get_terms(array(
        'taxonomy' => 'product_cat',
        'hide_empty' => false,
    ));
    if ($terms && !is_wp_error($terms)) {
        foreach ($terms as $term) {
            $new_rules[$term->slug . '/?$'] = 'index.php?product_cat=' . $term->slug;
            $new_rules[$term->slug . '/page/([0-9]{1,})/?$'] = 'index.php?product_cat=' . $term->slug . '&paged=$matches[1]';
        }
    }

    return array_merge($new_rules, $rules);
}

// Flush rewrite rules after theme switch
add_action('after_switch_theme', 'flush_rewrite_rules_after_theme_switch');
function flush_rewrite_rules_after_theme_switch() {
    flush_rewrite_rules();
}

Bước 5: Lưu thay đổi

Sau khi thêm đoạn mã vào file functions.php, lưu thay đổi bằng cách nhấn nút "Update File" (Cập nhật tập tin) hoặc "Save Changes" (Lưu thay đổi).

Done

Bài viết liên quan

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Back to top button
Close