Salah satu bagian terbaik tentang WordPress adalah tersedianya plugin yang mempermudah pekerjaan Anda sebagai pengguna dan sebagai pengembang. Seringkali saat membuat situs untuk klien, kami sebagai pengembang menggunakan plugin yang sangat penting agar situs memiliki fungsionalitas tertentu. Baru-baru ini, kami mengalami masalah di mana salah satu situs klien kami rusak. Sidebar tidak dimuat sepenuhnya, ada elemen yang hilang pada satu halaman pos yang membuat mereka ketakutan. Intinya dari cerita ini adalah bahwa salah satu anggota staf baru mereka yang baru mengenal WordPress telah menonaktifkan beberapa plugin yang diperlukan agar situs berfungsi dengan baik. Kami masuk dan mengaktifkan semua plugin yang dinonaktifkan, namun harus ada sesuatu yang dilakukan agar kami dapat mencegah masalah ini di masa depan. Pada artikel ini, kami akan menunjukkan cara menonaktifkan penonaktifan plugin dari Panel Admin WordPress (hanya untuk plugin tertentu).
Secara teoritis, Anda harus bisa menggunakan plugin Anggota Justin Tadlock dan menciptakan peran baru bagi pengguna. Namun, klien kami tidak ingin pergi rute ini. Ini adalah bisnis kecil, dan mereka mempekerjakan karyawan baru ini untuk menangani media sosial dan blog mereka, jadi kami tidak dapat membatasi akses. Mereka ingin memberinya kemampuan untuk mengaktifkan / menonaktifkan plugin sesuai kehendaknya. Kami harus menemukan cara yang membuat klien kami tetap bahagia, dan kami juga harus menemukan cara untuk mencegah agar masalah ini tidak terjadi di masa depan. Syukurlah kepada Steve Taylor, kami menemukan cuplikan yang memungkinkan Anda menghapus tautan “Nonaktifkan” dari plugin tertentu. Ini juga menghapus tautan Edit untuk semua plugin karena kami tidak ingin klien kami mengedit plugin apa pun melalui editor.
Jadi yang harus Anda lakukan adalah menempelkan kode berikut di file functions.php tema Anda:
add_filter ('plugin_action_links', 'disable_plugin_deactivation', 10, 4); fungsi disable_plugin_deactivation ($ actions, $ plugin_file, $ plugin_data, $ context) { // Hapus edit link untuk semua if (array_key_exists ('edit', $ actions)) tidak diset ($ actions ['edit']); // Hapus untuk menonaktifkan link untuk plugin penting if (array_key_exists ('nonaktifkan', $ actions) && in_array ($ plugin_file, array ( 'facebook-open-graph-meta-in-wordpress / fbogmeta.php', 'wp-pagenavi / wp-pagenavi.php' ))) tidak diset ($ actions ['disable']); kembali $ tindakan; }
Sekarang, Anda perlu mengubah array $ plugin_file di mana Anda melihat daftar plugin yang ditentukan. Path dari file tersebut relatif terhadap / wp-content / plugins /. Jadi pada contoh diatas ‘facebook-open-graph-meta-in-wordpress / fbogmeta.php’ adalah file yang berada di folder facebook-open-graph-meta-in-wordpress yang berada di dalam folder plugin. Anda dapat mengubah daftar untuk menambahkan sebanyak mungkin plugin yang Anda inginkan.
Trik ini adalah jalan pintas, dan sebenarnya tidak mencegah penonaktifan sebenarnya. Yang kita lakukan hanyalah menyembunyikan link Deactivate. Siapa pun dengan sedikit pengetahuan WordPress dapat menghasilkan URL penonaktifan dan menjalankannya. Tapi jika klien Anda cukup licik untuk melakukan itu, maka mereka sudah tahu FTP apa, dan mereka bisa menghapus plugin seperti itu.
Apakah Anda mengerjakan sebuah tema yang benar-benar memerlukan plugin khusus untuk berfungsi dengan benar? Maka jangan lupa turunkan kode diatas.