come definire funzioni "globali" richiamabili dal contenuto della pagina...

8 contenuti / 0 new
Ultimo contenuto
come definire funzioni "globali" richiamabili dal contenuto della pagina...

Scusate il titolo criptico, ma non sapevo come sintetizzare la domanda!
Anzi, le domande:

  • 1. è possibile creare funzioni che siano richiamabili dal contenuto di una pagina (che sia una page, un blog, ecc.), quando venga utilizzato il formato di input PHP? Immagino si possa fare usando il template.php. Ci sono modi di farlo a monte della procedura di templating?
  • 2. è possibile creare tag speciali che, quando trovati all'interno di un contenuto, richiamino una certa funzione? (es. argomento_funzione)

Le due domande convergono in un'altra: è possibile definire funzioni "globali" richiamabili, ad es., tra moduli diversi?

Scusatemi ma sono un novizio di Drupal, e forse ragiono ancora in maniera "non-drupaliana"! :-)

Giovanni

Scusate, mi sono già risposto alla seconda domanda usando l'hook_filter... restano però le altre :-)

ti crei un modulo e inserisci dentro le tue funzioni e poi le usi dove ti sevono? Oppure crei un blocco ci butti dentro tutto il codice che ti serve e lo fai eseguire nelle pagine che ti servono? Non so bene cosa vuoi fare e quindi magari esistono vie più pulite..

Ciao
Marco
--
My blog
Working at @agavee

Forse non mi è chiaro un passaggio.
Durante l'inizializzazione, Drupal carica tutti i moduli presenti e rende disponibili a tutta l'applicazione le funzioni definite in ognuno di essi?
Voglio dire, se nel mio modulo ho la funzione " function mia_funzione(){...}", la posso richiamare semplicemente in ogni altra parte di Drupal?
Se è così sono a calvallo :-)

se la crei come API si, è un pò quello che vai quando variable_get, form_set_error o db_query tanto per dirne alcune.

Ciao
Marco
--
My blog
Working at @agavee

Stasera il drupal.org è giù... nel frattempo mi potresti spiegare, se è veloce, come si crea una funzione come API?

Forse ho capito. Non avevo pensato che Drupal, al di là di tutto, i moduli se li carica tutti se abilitati. Quindi basta:

  1. o inserire la funzione direttamente nel modulo
  2. o inserirla dentro un miofile.inc e usare include("includes/miofile.inc") dentro il modulo

Ci sono modi più puliti?

La cosa più pulita è un modulo con dentro le funzioni che ti servono, attenzione però ad usare dei nomi che non esistano già!!
Per pulizia usa la nomenclatura di drupal "Modulo"_"Funzione" e non incontrerai problemi!!

Ciao