Một trong những phần hay nhất về WordPress là tính sẵn có của các plugin giúp công việc của bạn trở nên dễ dàng như một người dùng và là một nhà phát triển. Thông thường khi tạo trang web cho khách hàng, chúng tôi như các nhà phát triển sử dụng plugin mà hoàn toàn quan trọng đối với trang web để có một số chức năng nhất định. Gần đây, chúng tôi đã gặp phải vấn đề khi một trong số trang web của khách hàng của chúng tôi bị hỏng. Thanh bên đã không tải hoàn toàn, có các yếu tố bị thiếu trên trang đăng đơn đã làm họ không hài lòng. Điểm mấu chốt của câu chuyện này là một trong những nhân viên mới của họ là người mới sử dụng WordPress đã tắt một số plugin cần thiết cho trang web hoạt động đúng. Chúng tôi đã vào và kích hoạt tất cả các plugin không hoạt động, nhưng phải có cái gì đó được thực hiện để chúng tôi ngăn chặn vấn đề này trong tương lai. Trong bài này, chúng tôi sẽ chỉ cho bạn cách tắt plugin deactivation từ WordPress Admin Panel (chỉ dành cho các plugin cụ thể).
Về mặt lý thuyết, bạn sẽ có thể sử dụng plugin Thành viên của Justin Tadlock và tạo vai trò mới cho người dùng. Tuy nhiên, khách hàng chúng tôi đã không muốn đi tuyến đường này. Đây là một doanh nghiệp nhỏ và họ đã thuê nhân viên mới này để đối phó với phương tiện truyền thông xã hội và blog của họ, vì vậy chúng tôi không thể hạn chế quyền truy cập. Họ muốn cho anh ta khả năng kích hoạt / hủy kích hoạt plugin theo ý muốn của anh ta. Chúng tôi phải tìm cách để giữ khách hàng của chúng tôi hạnh phúc, và chúng tôi cũng đã phải tìm cách để ngăn chặn vấn đề này xảy ra trong tương lai. Rất may cho Steve Taylor, chúng tôi đã tìm thấy một đoạn trích cho phép bạn loại bỏ liên kết “Tắt” khỏi các plugin được chỉ định. Nó cũng xóa liên kết Chỉnh sửa cho tất cả các plugin vì chúng tôi không muốn khách hàng của chúng tôi chỉnh sửa bất kỳ plugin nào thông qua trình chỉnh sửa.
Vì vậy, tất cả những gì bạn phải làm là dán các mã sau đây trong file functions.php chủ đề của bạn:
add_filter ('plugin_action_links', 'disable_plugin_deactivation', 10, 4); chức năng disable_plugin_deactivation ($ action, $ plugin_file, $ plugin_data, $ context) { // Xóa liên kết chỉnh sửa cho tất cả if (array_key_exists ('edit', $ actions)) unset ($ action ['edit']); / / Hủy bỏ liên kết deactivate cho các plugin quan trọng if (array_key_exists ('deactivate', $ actions) && in_array ($ plugin_file, mảng ( 'facebook-open-graph-meta-in-wordpress / fbogmeta.php', 'wp-pagenavi / wp-pagenavi.php' ))) unset ($ action ['deactivate']); trả lại $ hành động; }
Bây giờ, bạn cần thay đổi mảng $ plugin_file nơi bạn thấy danh sách các plugin được chỉ định. Đường dẫn của tệp tương đối với / wp-content / plugins /. Vì vậy trong ví dụ trên ‘facebook-open-graph-meta-in-wordpress / fbogmeta.php’ là một tệp nằm trong thư mục facebook-open-graph-meta-in-wordpress nằm trong thư mục plugin. Bạn có thể thay đổi danh sách để thêm nhiều plugin tùy ý.
Thủ thuật này là một phím tắt, và nó không thực sự ngăn chặn sự ngưng hoạt động thực sự. Tất cả những gì chúng tôi đang làm là giấu liên kết Deactivate. Bất cứ ai có chút kiến thức WordPress đều có thể tạo ra một URL kích hoạt và chạy nó. Nhưng nếu khách hàng của bạn đủ khéo léo để làm điều đó, thì họ đã biết FTP là gì và họ có thể xóa các plugin một cách đơn giản bằng cách đó.
Bạn đang làm việc trên một chủ đề mà hoàn toàn yêu cầu một plugin cụ thể cho nó để hoạt động đúng? Sau đó, đừng quên bỏ mã ở trên.