Varios complementos vs uno combinado

4

Tengo diferentes complementos de funcionalidad para mi sitio de Wordpress, por lo que normalmente solo creo un complemento con todas mis funciones personalizadas.

Ahora quiero separar este complemento a varios complementos (uno para cada función o así, para ser más organizado y también para poder activar y desactivar funciones específicas fácilmente y pasar funciones específicas de un sitio a otro sin tener que pasar) todo el complemento y luego personalizarlo para que tenga solo las funciones que quiero en este sitio específico ...).

Así que mi pregunta es:

¿Hará mi sitio más lento de alguna manera (el mismo código pero dividido en varios complementos en lugar de compilado en uno ...)?

También: ¿cree que podrían ser otras desventajas para ese enfoque?

    
pregunta mondi 15.07.2018 - 15:57

1 respuesta

5

Si es exactamente el mismo código, entonces no, no debería causar ningún cambio en el rendimiento ...

¿Por qué? Porque cargar un plugin es un proceso bastante fácil (por lo tanto, rápido). Todo sucede en wp-settings.php y este es el código:

// Load active plugins.
foreach ( wp_get_active_and_valid_plugins() as $plugin ) {
    wp_register_plugin_realpath( $plugin );
    include_once( $plugin );
}
unset( $plugin );

Como puedes ver, es solo un bucle. Y wp_get_active_and_valid_plugins es bastante simple: solo carga en la opción ( active_plugins ) y luego recorre esa matriz y comprueba si existen archivos ...

Entonces, no importa cuántos complementos haya, solo se carga una opción desde la base de datos y no hay operaciones costosas relacionadas con la carga de un complemento (a menos que el complemento haga algo complicado).

PS. Por supuesto, asumo que la cantidad de estos complementos será razonable: si corta ese código y termina con 1000 complementos, entonces puede causar algunos problemas (pero aún más pequeños, principalmente durante la comprobación de actualizaciones, supongo). .

    
respondido por el Krzysiek Dróżdż 15.07.2018 - 16:07

Lea otras preguntas en las etiquetas