Tôi đang làm việc với một plugin và một phần của nó liên quan đến việc đặt giá trị tùy chọn áp dụng cho tất cả các trang web trong mạng WordPress. Tôi biết về các hàm add_site_option và get_site_option cho phép bạn lưu giá trị vào bảng wp_sitemeta, nhưng điều tôi không thể tìm ra là làm thế nào để đặt các trường vào vị trí thích hợp trong phụ trợ WordPress và cách chặn việc lưu lại sitewide các giá trị để chèn lệnh gọi add_site_option khi điều đó xảy ra.
Đối với sự cố đầu tiên (thêm các trường), thông thường tôi sẽ sử dụng API Cài đặt, cụ thể là register_setting và add_sinstall_field, để đưa danh sách trắng vào tùy chọn mới và sau đó chèn một trường cho nó vào trang tùy chọn thích hợp. Nhưng tôi không thể tìm thấy thông tin ở bất cứ đâu về việc bạn có thể sử dụng add_sinstall_field để thêm trường vào trang Cài đặt trong phần Quản trị mạng mới của phần phụ trợ hay không, nếu có một chức năng thay thế hoạt động cho các trang Quản trị mạng hoặc nếu bạn chỉ cần tiêm HTML thủ công. (Bạn có thể thực hiện thủ công bằng cách viết một hàm phát ra trường và sau đó kết nối chức năng đó với hành động "wpmu_options", được chạy ở cuối trang Cài đặt trong Quản trị mạng. Nhưng sau đó, bạn cũng phải xử lý các trường hợp khác và mọi thứ khác bằng tay.)
Vấn đề thứ hai có lẽ liên quan đến việc tìm kiếm một hành động chạy khi người dùng nhấn "Lưu" trên trang Cài đặt quản trị mạng, nhưng tôi chưa thể tìm thấy hành động đó. Bất kỳ sự chỉ đạo nào cũng đều được đánh giá cao.
Vậy - suy nghĩ? Có cách nào hay để cho phép quản lý các tùy chọn liên kết trang web cho plugin thông qua khu vực Quản trị mạng mới không? Nếu vậy, nó được thực hiện như thế nào?