Avevo la necessità di elencare i termini di un vocabolario della tassonomia.
Ho trovato questo script che funziona
<?php
$vid = 1; /* ID del vocabolario della taxonomy */
$terms = taxonomy_get_tree($vid);
print "<ul>";
foreach ( $terms as $term )
{
print "<li>".
l($term->name,'taxonomy/term/'.$term->tid, array('title' => $term->name)).
"</li>";
}
?>
Quindi ottengo l'elenco delle parole. Il risultato è questo e non mi piace:
<li><a href="/taxonomy/term/4">Parola</a></li>
Non mi piace perchè manca l'attributo title="qualcosa" dentro il tag A.
Credevo che questo " array('title' => $term->name)" servisse allo scopo ma a quanto pare non è così...
Mi sapete aiutare?
Tnx
Devi usare la key 'attributes'.
http://api.drupal.org/api/function/l/6
Ciao
la funzione l() serve proprio a questo.
$output .= l("Nome del link", 'path link', array('title'=>'descrizione') );
Ritorna:
<a href="/sito/?q=node" title="descrizione">Nome del link</a>
Non ho sotto mano un d6 ma non credo che cambi nulla.
Uccio
Il mio sito con drupal
Allora perchè questo:
l($term->name,'taxonomy/term/'.$term->tid, array('title' => $term->name))
Mi restituisce questo
<a href="/taxonomy/term/4">Parola</a>
E non questo????
<a href="/taxonomy/term/4" title="Parola">Parola</a>
Cosa mi sfugge?
Guarda ho sottomano la funzione che ho usato in un modulo per drupal 5 ed effettivamente è come dici tu, ti riporto la riga:
l('www.sito.com', 'http://www.sito.com', array('target' => '_blank'));
Se tu stai usando drupal 6 leggi la documentazione perchè il modo di chiamarla è diversa, in quanto richiede un array indicizzato. La chiave che ti interessa è 'attributes'.
In base alla documentazione di D6, scriverei così:
l($term->name,'taxonomy/term/'.$term->tid, array('attributes=>'array('title' => $term->name)))
Perfetto funziona benissimo (se si corregge il tuo errore di battitura :))
Eccolo qua: