Compago

...free knowledge

 
  • Increase font size
  • Default font size
  • Decrease font size
Home Manuali Programmazione Come inserire codice javascript o css o un meta tag in una pagina con joomla

Come inserire codice javascript o css o un meta tag in una pagina con joomla

E-mail Stampa PDF

Quando si crea una estensione per Joomla, molte volte si desidera includere il proprio codice CSS o Javascript oppure occorre inserire o modificare un meta tag.

Per fare questo basta usare delle semplici funzioni che il framework di Joomla ci mette a disposizione.

In particolare useremo alcuni metodi della classe JDocument:

  • getMetaData Legge un meta tag.
  • setMetaData Aggiunge o modifica un meta tag.
  • addScript Aggiunge alla pagina un link ad un file contenente uno script
  • addScriptDeclaration Aggiunge alla pagina uno script
  • addStyleSheet Aggiunge alla pagina un link ad un file CSS
  • addStyleDeclaration Aggiunge direttamente alla pagina le dichiarazioni di stylesheet

La prima cosa da fare è recuperare un riferimentoall'oggetto JDocument in modo da poter usare i suoi metodi:

$Doc = JFactory::GetDocument (); 

Ora, per esempio, per aggiungere un foglio di stile:

$Doc->addStylesheet('url/percorso/mystylesheet.css'); 

Allo stesso modo è altrettanto facile aggiungere un file Javascript:

$Doc->addScript('url/percorso/myscript.js'); 

Entrambi i metodi accettano come paramentro il percorso dove risiede il file da inserire, questo percorso, se interno al sito, deve essere relativo alla DocumentRoot (dove risiede il file index.php), se invece si desidera utilizzare url assoluto:

$Doc->addStylesheet(JURI::Root().'url/percorso/myscript.js'); 

Se il file è esterno al sito basta inserire l'intero URL:

$Doc->addStylesheet('http://www.test.com/percorso/myscript.js'); 

se fosse necessario aggiungere direttamante del codice javascript o delle dichiarazioni di stylesheet alla pagina, dovremo usare altre funzioni:

$MyCss = "
p {
margin: 15px;
color: #111122;
}

.myclass {
background: #ff0000;
color: # 00ffff;
}
";

$Doc->addStyleDeclaration($MyCss);

Nel caso dovessimo incudere del codice Javascript:

$MyCode = " 
var d = new Date();
document.write(d.getHours());
";

$Doc->addScriptDeclaration($MyCode);

Per inserire un meta tag occorre usare la funzione setMetaTag:

$document->setMetaData("fb:admins","$admin_id");

oppure per modificare un meta tag esistente:

$keys=$document->getMetaData("keywords");
$document->setMetaData("keywords",$keys.",javascript,code,snips");
 
Loading

Login




Chiudi