Nhận danh sách tất cả các thanh bên đã đăng ký


17

Tôi đang đăng ký sidebars tự động cho mỗi danh mục (một không gian widget riêng cho mỗi danh mục). Kỹ thuật tôi đang sử dụng là ở đây .

Ở phía quản trị viên, tôi có một trang tùy chọn nơi tôi cần hiển thị danh sách thả xuống của tất cả các thanh bên đã đăng ký ... Có cách nào để tự động lấy danh sách các thanh bên đã đăng ký này không? vì chúng được đăng ký trong hàm.php. Tôi cho rằng chúng nằm trong bộ nhớ chứ không phải trong cơ sở dữ liệu.

Tôi có thể theo dõi các thanh bên tôi đăng ký trong một số biến toàn cục, nhưng chỉ trong trường hợp các plugin đăng ký thanh bên của riêng họ, tôi cũng muốn tính đến chúng.

Tôi sẽ đào sâu vào cốt lõi nếu tôi phải, nhưng nghĩ rằng ai đó có thể biết ngoài lề :)

Cảm ơn

Câu trả lời:


22

Hmm ... Tôi không chắc đây có phải là cách tốt nhất để làm hay không nhưng nó đơn giản:

Tôi nhìn vào register_sidebar()và thấy rằng các thanh bên mới chỉ đơn giản được xử lý trên một mảng:$wp_registered_sidebars

Và tôi đoán đó là điều đó. Nếu họ thay đổi tên của biến, tôi đoán tôi sẽ bị lừa.


4
Bạn luôn có thể truy cập nó qua $ GLOBALS ['wp_registered_sidebars']. Trong trường hợp thay đổi, bạn có thể trong plugin của mình chỉ cần chạy một tìm kiếm và thay thế - và nó không thay đổi vì nó đã được giới thiệu theo như tôi có thể nhớ.
hakre
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.