Bagaimana cara mengetahui apakah suatu plugin kompatibel dengan multisite?

9

Sebagai pemula admin WordPress, saya baru saja melakukan upgrade WordPress non-otomatis pertama saya.

Saya memutakhirkan lima instalasi WordPress yang berbeda dari 4.1.3 menjadi 4.2.

Mereka semua merujuk ke berbagai situs web yang dihosting di host web yang sama dengan satu domain utama dan empat domain tambahan.

Di setiap situs web, saya menggunakan plug-in berikut:

  • Akismet;
  • Google Analytics oleh Yoast;
  • Google Adsense;
  • Peta Situs Google XML dan
  • Jetpack oleh WordPress.com.

Untuk merampingkan administrasi lebih lanjut, saya mempertimbangkan untuk menggabungkan kelima pemasangan menjadi satu instalasi multisite.

Sejauh ini, saya telah menemukan cukup sulit untuk menemukan jawaban yang pasti tentang kompatibilitas masing-masing plugin dengan instalasi multisite di situs web plugin.

Apakah halaman plugin adalah tempat yang tepat untuk mencari ini?

Apakah ada lokasi sentral di mana informasi ini dapat ditemukan?

Alfred Myers
sumber
Sudahkah Anda menemukan saran apakah konsolidasi ini adalah ide yang baik? Saya mempertimbangkan hal yang sama, tetapi rekan saya yang telah mengelola multisite besar mengatakan itu lebih merepotkan daripada nilainya. Saya sedang mempertimbangkan untuk menjaga situs saya sebagai instalasi tunggal dan menggunakan sesuatu seperti InfiniteWP untuk diadministrasikan. Sudahkah Anda mempertimbangkan itu?
Rikki
Saya tidak mengetahui InfiniteWP, @Rikki. Saya akan melihatnya. Terima kasih!
Alfred Myers
Saya terkejut informasi ini untuk memeriksa kompatibilitas plugin multisite tidak mudah diakses di suatu tempat.
Antoine Brunel

Jawaban:

6

Ada dua jenis kompatibilitas multisite:

  1. Kompatibilitas pasif: tidak melakukan multisite spesifik, hanya bekerja tanpa merusak apa pun.
  2. Kompatibilitas aktif: mengubah atau memperluas perilaku spesifik multisite.

Saya kira Anda keluar untuk 1. Lihat slide saya dari WordCamp Prague 2015 untuk bagian kedua.

Plugin yang tidak mengatakan apa pun tentang multisite tidak boleh diaktifkan sebagai plugin jaringan. WooCommerce misalnya membuat beberapa tabel khusus selama instalasi. Jika Anda mengaktifkannya di seluruh jaringan, subsitus tidak mendapatkan tabel ini dan langit akan jatuh ke kepala Anda.

Sayangnya, sebagian besar plugin tidak memeriksa jenis aktivasi mereka, sehingga mereka membiarkan Anda melakukan aktivasi yang salah.

terkait adalah masalah UX seperti pointer admin atau halaman "Tentang" khusus yang harus Anda klik pada subsite yang pernah ada dalam plugin yang tidak kompatibel. WP SEO Yoast adalah salah satu contohnya . Ini akan segera diperbaiki di plugin itu, saya kira. :)

Masalah lain bergantung pada apa yang Anda lakukan dengan multisite itu. Jika Anda sedang membangun situs web multibahasa di mana setiap situs ditulis dalam satu bahasa dan situs tersebut saling terhubung satu sama lain, Anda ingin menyinkronkan posting ketika Anda menulis konten. Itu berarti Anda memanggil switch_to_blog()hook save_post, dan menyimpan posting yang terhubung juga. save_postakan dipanggil beberapa kali selama satu permintaan sekarang. Banyak plugin yang tidak mengetahui situasi seperti itu, sehingga mereka hanya menimpa informasi meta pos untuk pos yang terhubung, berpikir bahwa mereka masih berada di pos pertama.

Carilah plugin yang berurusan dengan meta pos dan tidak memiliki cek seperti ini:

if ( is_multisite() && ms_is_switched() )
    return FALSE;

Plugin ini tidak kompatibel.

Serupa, meskipun lebih sulit untuk ditentukan, adalah masalah ketika plugin menyentuh bidang meta pengguna atau menulis ulang aturan.

Beberapa plugin mencoba menulis konten ke dalam file tanpa menyertakan ID situs dalam nama file. Mereka sangat mungkin rusak juga.

Seperti yang dikatakan Tom: Buat instalasi pengujian, jalankan setiap kasus penggunaan yang dapat Anda bayangkan. Anda tidak dapat mempercayai halaman plugin, dan biasanya tidak ada informasi yang cukup.

fuxia
sumber
2

Kecuali sebuah plugin menyatakan itu kompatibel, satu-satunya cara yang dapat diandalkan untuk mengetahuinya adalah dengan membuat instalasi multisite lokal dan mengujinya.

Kadang-kadang ada tanda-tanda yang dapat Anda cari, tetapi ini selalu merupakan gejala kode yang buruk, misalnya nama tabel basis data hardcoding daripada menggunakan awalan dari $wpdb, dalam hal ini saya akan merekomendasikan menghindari plugin walaupun Anda tidak menggunakan multisite

Tom J Nowell
sumber