Prosím o radu – v Drupalu 7 mi nefunguje výpis obsahu bloku touto
konstrukci:
$nadpis = module_invoke(‚block‘, ‚block_view‘, ‚2‘); print
render($nadpis);
Jde tedy o vypis bloku, ktery ma "block_delta"=2.
Konstrukci jsem prevzal primo „u zdroje“ (http://drupal.org/node/1034524),
zadané parametry jsou správné…Pokusny vypis jineho bloku (prihlasovaciho formulare) podobnou konstrukci $nadpis = module_invoke('user', 'block_view', 'login')
funguje. Děkuji za jakoukoli radu !
TC
Pole $nadpis po vypsání obsahuje toto:
subject:
content:Libovolný nadpis upoutávky
#printed: 1
#children:
Obsah odpovídající klíči "content" je obsah bloku, který potřebuji vypsat...ale zpusobem render($nadpis) se nevypíše nic...
Takto se to chová v případě nově vytvořených "custom" bloků (mají block_delta='1' nebo '2'). Pokud zkusím vypsat některý systémový blok - například přihlašovací formulář ( module_invoke('user', 'block_view', 'login') ) obsah se vypíše bez problémů...Díky za radu.
Zdravim, zkuste
$block = block_load('block', '1');
$output = drupal_render(_block_get_renderable_array(_block_render_blocks(array($block))));
print $output;
Taktéž používám řešení z výše uvedeného zdroje, konkrétně toto. Ten module invoke Vám tedy nic nevrátí? Koukal jste do jeho obsahu?