Thay đổi loại bài tùy chỉnh thành phân cấp sau khi được đăng ký


9

Rất giống với câu hỏi trước: Thay đổi đối số 'viết lại' sau khi loại bài đăng tùy chỉnh được đăng ký

Tôi đang cố gắng làm cho các sản phẩm MarketPress được phân cấp - Tôi có thể làm điều đó với việc hack các tệp plugin, nhưng tôi muốn tránh xa chúng nếu có thể.

Có thể thay đổi đối số của một loại bài đăng tùy chỉnh sau khi nó đã được đăng ký, nhưng trước khi tất cả các công cụ viết lại nội bộ đã được thực hiện?

CẬP NHẬT: Đây là giải pháp

Và như thường lệ, tôi tìm thấy câu trả lời vài phút sau khi đăng câu hỏi ...

Vì vậy, đây là những gì tôi đã làm trong tệp tin.php của chủ đề để giải quyết vấn đề của mình:

function modify_products() {
    if ( post_type_exists( 'product' ) ) {

        /* Give products hierarchy (for house plans) */
        global $wp_post_types, $wp_rewrite;
        $wp_post_types['product']->hierarchical = true;
        $args = $wp_post_types['product'];
        $wp_rewrite->add_rewrite_tag("%product%", '(.+?)', $args->query_var ? "{$args->query_var}=" : "post_type=product&name=");
        add_post_type_support('product','page-attributes');
    }
}
add_action( 'init', 'modify_products', 1 );

Tất cả mọi thứ hoạt động: phân cấp, viết lại, vv :)


5
Ragulka, bạn có thể xóa GIẢI PHÁP khỏi tiêu đề của bạn và gửi giải pháp của bạn như là một câu trả lời. Sau 24 giờ bạn sẽ có thể chấp nhận nó. Nó chỉ làm cho nó dễ dàng hơn cho những người có thể có cùng một vấn đề tương tự. Cảm ơn.
Stephen Harris

@ragulka chào mừng bạn đến với Sàn giao dịch WordPress! Xin lưu ý: trang web này không phải là định dạng diễn đàn hỗ trợ thông thường, mà là sử dụng định dạng câu hỏi và câu trả lời , để xây dựng một nền tảng kiến ​​thức vững chắc. Các câu hỏi và câu trả lời được đăng riêng, và được cộng đồng bình chọn lên xuống. OP "chấp nhận" câu trả lời giải quyết tốt nhất câu hỏi ban đầu. Vì vậy, như Stephen Harris đã nói: vui lòng đăng giải pháp của bạn dưới dạng Câu trả lời , và sau đó chấp nhận câu trả lời đó.
Chip Bennett

Này, xin lỗi về điều đó. Tôi thực sự đã cố gắng trả lời câu hỏi của riêng mình nhưng tôi không thể, tôi được yêu cầu đợi 8 tiếng hoặc thêm nhận xét hoặc chỉnh sửa câu hỏi của mình. Tôi cũng vậy. Chà, tôi đoán tôi sẽ đợi thêm 4 tiếng nữa và sau đó tôi có thể trả lời câu hỏi của mình.
ragulka

Câu trả lời:


10

Và như thường lệ, tôi tìm thấy câu trả lời vài phút sau khi đăng câu hỏi ...

Vì vậy, đây là những gì tôi đã làm trong tệp tin.php của chủ đề để giải quyết vấn đề của mình:

function modify_products() {
    if ( post_type_exists( 'product' ) ) {

        /* Give products hierarchy (for house plans) */
        global $wp_post_types, $wp_rewrite;
        $wp_post_types['product']->hierarchical = true;
        $args = $wp_post_types['product'];
        $wp_rewrite->add_rewrite_tag("%product%", '(.+?)', $args->query_var ? "{$args->query_var}=" : "post_type=product&name=");
        add_post_type_support('product','page-attributes');
    }
}
add_action( 'init', 'modify_products', 1 );

Tất cả mọi thứ hoạt động: phân cấp, viết lại, vv :)

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.