Il mio modulo fornisce un semplice blocco che deve contenere un elenco non ordinato con alcune immagini. Da una funzione di blocco, sto restituendo un array renderizzabile:
$block['content'] = array(
'list' => array(
'#theme' => 'item_list',
'#type' => 'ul',
'#attributes' => array('class' => 'foo1'),
'#items' => array(
/* ... what should go here? */
),
),
);
Vorrei avere alcuni array renderizzabili come elementi nell'elenco degli elementi, ma non riesco a inserire alcun array #items
nell'array.
I documenti dell'API theme_item_list di Drupal 7 dicono:
articoli: una serie di elementi da visualizzare nell'elenco. Se un elemento è una stringa, viene utilizzato così com'è. Se un elemento è un array, l'elemento "data" dell'array viene utilizzato come contenuto dell'elemento dell'elenco. Se un elemento è un array con un elemento "children", tali elementi secondari vengono visualizzati in un elenco nidificato. Tutti gli altri elementi vengono trattati come attributi dell'elemento della voce di elenco.
Ho provato a usare sia gli elementi "data" che "children", ma ottengo vuoti <li>
o c'è una parola Array
al loro interno.
Qual è il modo corretto per farlo? Theme_item_list è la soluzione giusta / aggiornata?
'#items' => array('data' => 'my data')
non sembra fare davvero altro che'#items' => 'my data'
(guarda il codice per theme_item_list ).'children'
viene utilizzato specificamente per creare un elenco nidificato. Non sono sicuro del perché sia impostato in questo modo.