Risposte:
Il modulo multiblocco lo rende possibile:
Il modulo a blocchi di Drupal è limitato dal fatto che un blocco può avere solo un'istanza. Ogni blocco ha una relazione 1: 1 con le impostazioni relative a regione, peso, visibilità (e altro). Ciò significa che è impossibile avere blocchi in più aree o avere blocchi con impostazioni diverse su pagine diverse. Il modulo MultiBlock risolve questo problema consentendo di creare più istanze di blocco di blocchi già esistenti.
Non è chiaro se si desidera utilizzare più volte lo stesso blocco nella stessa pagina o posizionarlo in aree diverse su pagine diverse. Ad ogni modo, ti consiglio di dare un'occhiata al modulo contestuale .
Utilizzando il contesto è possibile posizionare un blocco con in diverse regioni su pagine diverse. In alternativa puoi creare 2 contesti che si applicano alla stessa pagina / e posizionando lo stesso blocco in regioni diverse.
Il modulo Pannelli semplifica inoltre l'uso di più istanze dello stesso blocco su una pagina.
Se hai già un modulo personalizzato per il sito, puoi definire i tuoi blocchi per ripetere il contenuto di un blocco esistente. Apparirà quindi due volte nell'elenco dei blocchi
/* -------------------
custom blocks
----------------- */
/**
* Declare what blocks are provided by this module.
* Implements hook_block_info().
*/
function MYMODULE_block_info(){
$block['fibble_home'] = array(
'info' => t('fibble (home)'),
'cache' => DRUPAL_CACHE_PER_ROLE,
);
$block['fibble_members'] = array(
'info' => t('fibble (members)'),
'cache' => DRUPAL_CACHE_PER_ROLE,
);
return $block;
}
/**
* Define what our block is going to look like.
* Implements hook_block_view().
*/
function MYMODULE_block_view($block_key){
$block = array();
// tweets block to appear twice
if($block_key == 'fibble_home' || $block_key == 'fibble_members'){
//This is the title of the block.
$block['subject'] = t('Fibble');
$fblock = module_invoke('MODULE_ORIGINAL_BLOCK', 'block_view', 'ID_ORIGINAL_BLOCK');
$fcontent = render($fblock['content']);
$block['content'] = '<!-- content repeated by MYMODULE -->';
$block['content'] .= $fcontent;
}
return $block;
}
Utilizzare il modulo MultiBlock .
Vai a Struttura-> Blocchi-> Istanze. Assegna un titolo di istanza univoco e seleziona il tipo di blocco e salva. Quindi abilitare il blocco assegnandolo a una regione in cui si desidera.
Anche il modulo Bean ora ha questa funzionalità. Non solo per entità di blocco personalizzate ma anche per blocchi definiti in hook_block. Vedi la versione dev e il sottomodulo bean_all.