it-swarm.dev

Come creare una scorciatoia per countModules?

Sono stanco di digitare $this->countModules('...'). C'è un modo per creare un alias per quella funzione, qualcosa di simile a JavaScript quando faccio semplicemente var alias = myFunction?

Ho provato ad assegnare $this in una variabile globale, quindi utilizza la funzione wrapper e ho provato use $this->countModules as m ma niente di tutto ciò funziona.

Grazie!

2
Jinx

Semplicemente non è necessario farlo. Come ha già detto @Bakual, ​​il tuo approccio è una cattiva pratica.

Per cominciare, stai avvolgendo una funzione all'interno di una funzione inutilmente quando non è richiesta. Quindi stai restituendo JFactory::getDocument()->countModules(...), nel senso che stai chiamando la classe JFactory, quindi chiamando JDocument che deve verificare se esiste già prima di crearlo, quindi countModules() funzione. Nel complesso stai rallentando il processo.

Mantieni le cose semplici attenendoti a $this->countModules()

6
Lodder

L'ho capito, dopo un po 'di armeggiamento:

//Shorthand for countModules function
function m($arguments) {
    return JFactory::getDocument()->countModules($arguments);
}
2
Jinx