Saya telah menginstal plugin Google Analyticator di situs saya. Saya juga menggunakan plugin MobilePress untuk menyajikan tema yang dirancang untuk browser ponsel non-ponsel pintar. Saya telah menyiapkan Google Analytics untuk Seluler untuk digunakan dalam tema ini dan ingin menonaktifkan plugin Analyticator karena ini mencakup panggilan ke file js yang lebih besar.
Adakah yang tahu apakah mungkin untuk menonaktifkan plugin menggunakan functions.php atau metode lain?
Saya percaya saya telah menemukan kode yang menambahkan fungsi ke halaman, jadi jika itu tidak mungkin untuk menonaktifkan seluruh plugin, apakah mungkin untuk menghentikan tindakan untuk mengeksekusi? Saya telah mencoba menonaktifkannya secara langsung tanpa hasil. Berikut ini kode dari file plugin:
add_action('wp_head', 'add_google_analytics', 999999);
add_action('init', 'ga_outgoing_links');
Saya mencoba menghapus tindakan itu dengan:
remove_action('wp_head','add_google_analytics',9999999);
remove_action('init', 'ga_outgoing_links');
Setiap bantuan sangat dihargai.
Jawaban:
Ketika WordPress mengaktifkan sebuah plugin, ia memanggil
activate_plugin()
fungsi tersebut. Fungsi ini mengaktifkan plugin di kotak pasir dan mengarahkan di tempat lain untuk sukses. Ini telah digunakan oleh beberapa penulis untuk secara terprogram mengaktifkan dependensi plugin.Ada fungsi lain
deactivate_plugin()
,, yang melakukan hal serupa secara terbalik ... sebenarnya cara WordPress menonaktifkan plug-in ketika Anda mengklik "nonaktifkan" atau "nonaktifkan."Untuk menonaktifkan plugin yang diinstal, cukup hubungi:
Atau, untuk menonaktifkan beberapa plugin sekaligus:
Ada parameter kedua (yang pertama adalah string atau array plugin untuk menonaktifkan) yang memungkinkan Anda untuk menonaktifkan plugin tanpa memanggil kait penonaktifan. Secara default, ini disetel ke false, dan saya sarankan Anda membiarkannya seperti itu. Kecuali jika karena alasan tertentu Anda ingin memotong deaktivasi, maka Anda akan melakukan:
Ini hanya akan mematikan plugin, tetapi itu tidak akan memecat apa pun plugin terdaftar untuk dilakukan pada penonaktifan. Jadi jika plugin menghapus opsi atau tabel db ketika dinonaktifkan, Anda ingin melakukan penonaktifan "hening" ini untuk menyimpan informasi itu dan menggunakannya di tempat lain.
sumber
Ini berkat jawaban brilian EAMann di atas, dan saya pikir mungkin juga bermanfaat untuk poster aslinya ...
Saya membutuhkan solusi untuk memastikan pengguna menonaktifkan plugin saya jika mereka mengunggah versi premium (untuk menghindari potensi konflik). Sebelumnya saya mendeteksi kondisinya dengan is_plugin_active dan menunjukkan pesan kesalahan admin untuk meminta pengguna mematikannya. Ini jauh lebih lancar ...
Catatan: Tampaknya tidak berfungsi pada register_activation_hook, tetapi admin_init berfungsi seperti mantra.
sumber
Ini solusinya, buat plugin yang bisa menonaktifkan plugin lain seperti ini:
Dorong ini ke produksi, aktifkan, lalu bawa database ke mesin pengembang lokal Anda.
Sumber
sumber