Làm cách nào để ghi đè CSS của plugin với chủ đề con một cách sạch sẽ?


8

Tôi đã tự mình tuân thủ các quy ước của WordPress để tôi có thể có một chủ đề trẻ em sạch sẽ, gợi cảm. Tuy nhiên, tôi không chắc chắn làm thế nào để tiến hành một vấn đề nhất định.

Tôi muốn ghi đè CSS cho một số plugin trong trang web WordPress của tôi và bài đăng tuyệt vời này là một bước tuyệt vời theo đúng hướng. Mối quan tâm duy nhất của tôi là tôi muốn làm tất cả những gì có thể để tránh trọng các header.phptập tin trong chủ đề cha mẹ của tôi để các làm điều này.

Có một cách tuyệt vời khác để làm điều này? Cảm ơn bạn đã giúp đỡ!

Cập nhật :

Như đã được chỉ ra bởi nhận xét của người dùng khác, thực tế điều này phụ thuộc vào cách plugin thực hiện các kiểu của nó. Điều này sang một bên, giả sử rằng các plugin cung cấp một cách để các kiểu được triển khai trong style.csstrang tính của chủ đề con hoặc, trong trường hợp của tôi, một stylesthư mục riêng được liên kết với style.csstrang tính đó .

Tôi cũng biết tôi có thể sử dụng ở !importantmọi nơi, nhưng điều này thường được tán thành.


nó phụ thuộc hoàn toàn vào cách các plugin trong câu hỏi đang thêm kiểu của chúng.
Milo

Tôi đã cập nhật bài viết của mình để chứa ý kiến ​​của bạn. Cảm ơn!
Jordan Thornquest

Bình chọn gần như không mang tính xây dựng . Vui lòng chỉnh sửa câu hỏi của bạn để tham khảo các Plugin cụ thể và bao gồm mã triển khai CSS cụ thể cho các Plugin đó.
Chip Bennett

Tôi rất thích, nhưng thật không may đây là một câu hỏi khá chung chung . Mục tiêu của tôi là gói gọn tất cả các bảng định kiểu có thêm các chỉnh sửa tùy chỉnh cho bất kỳ kiểu dáng nào của plugin trong một thư mục trong chủ đề con của tôi. Điều này giữ một số mã thực sự sạch, và rất hiệu quả. Tôi sẽ thêm cụ thể, mã, mặc dù!
Jordan Thornquest

Tôi vừa tìm thấy plugin CSS tùy chỉnh đơn giản này Nó xử lý mọi thứ được thảo luận để thu hút CSS phụ thuộc. Đơn giản để cài đặt và sử dụng.
user41251

Câu trả lời:


15

Nếu các plugin đang thêm chính xác các kiểu của chúng thông qua wp_enqueue_style, bạn chỉ cần loại bỏ chúng:

function wpa_dequeue_style() {
    wp_dequeue_style( 'plugin-style-handle' );
}
add_action( 'wp_enqueue_scripts', 'wpa_dequeue_style', 100 );

Việc này có hoạt động hay không phụ thuộc vào cách thức và nơi các plugin bổ sung kiểu của chúng, vì vậy không có câu trả lời tuyệt đối mà không biết các phương pháp cụ thể mà các plugin đang sử dụng.

EDIT - một tùy chọn khác không liên quan đến việc loại bỏ hoàn toàn các kiểu là để thu hút các kiểu của riêng bạn với các kiểu plugin làm phụ thuộc:

wp_enqueue_style(
    'my-styles',
    get_template_directory_uri() . '/mystyles.css',
    array('plugin-style-handle')
);

Đây chắc chắn là một bước đi đúng hướng. Tuy nhiên, phần ghi đè của tôi là các chỉnh sửa, do đó, việc đánh đổi sao chép toàn bộ biểu định kiểu và chỉnh sửa nó là một chút phản tác dụng. Giống như bạn đã nói, nó cũng hoàn toàn phụ thuộc vào cách thêm css.
Jordan Thornquest

3
xem chỉnh sửa ở trên.
Milo

Tôi sẽ chỉnh sửa nó. Trông giống như một ý tưởng tuyệt vời!
Jordan Thornquest

1
Ồ, tôi không thể nâng cấp đủ. Nó đã làm việc!
Jordan Thornquest

Đó là một câu trả lời cũ nhưng đã giúp tôi vào năm 2020. Cảm ơn!
Kinburn101
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.