Dove posizionare il codice nei moduli Joomla


8

Quando si sviluppa un'estensione Joomla, ci sono delle migliori pratiche, linee guida o raccomandazioni su dove posizionare le diverse parti del mio codice (PHP e HTML)?

Sto pensando principalmente ai file di base inclusi in un modulo:

mod_mymodule.php
helper.php
tmpl/default.php

Inoltre, quali sono i principali vantaggi dell'inclusione di un helper.phpfile e in alcuni casi può essere rimosso?


Puoi trovare buone informazioni anche qui: Come creare un nuovo modulo
FFrewin

Risposte:


7

helper.php:

Questo file è dove dovrebbero andare tutte le tue funzioni appartenenti a una classe. È fondamentalmente la versione del modulo di un modello per un componente, quindi attività come l'esecuzione di query sul database, ecc. I vantaggi di questo file sono che mantiene tutte le funzionalità di base in 1 posizione. Se un modulo contiene già questo file, 1 semplice regola, non rimuoverlo.

mod_mymodule.php:

Come ha già accennato @ subashbasnet8, questo file è dove puoi chiamare le tue funzioni e anche un buon posto per ottenere i parametri del modulo e definirli come variabili. Dovresti anche fare cose come inserire le tue POSTvariabili qui. Il markup HTML non deve appartenere a questo file.

default.php:

Questo file dovrebbe contenere tutto il markup HTML semplicemente perché consentirà quindi all'utente (o anche a te stesso) di sovrascriverlo, cosa che non puoi fare con gli altri 2 file. Anche cose come l'importazione di librerie CSS / JS dovrebbero entrare di nuovo qui, in modo da poter eseguire qualsiasi sostituzione.


5

Fondamentalmente, mod_mymodule.php è una pagina bootstrap del tuo modulo. Qui includerai il file helper e chiamerai la funzione necessaria che risiede in helper.php. puoi inserire il codice HTML nella pagina tmpl / default.php e il codice php nella pagina helper e mod_mymodule.php.

Per maggiori dettagli, vedi questo . Grazie.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.