Carreguei um assunto e conteúdo do bloco module_invoke()
e o usei render()
para renderizá-los. Eu quero usar links contextuais para este bloco. Como posso renderizá-los também?
Este é o código que estou usando na página - modelo front.tpl.php.
$block = module_invoke('block', 'block_view', '4);
print render($block);
Que código devo usar?
A resposta de Bart fornecerá um aviso de Padrões Estritos (ativado por padrão no PHP 5.4). Para corrigir isso, use uma variável intermediária para a matriz renderizável:
A razão pela qual o aviso ocorre é porque a
drupal_render
função espera que seu parâmetro seja uma referência. Tem a assinaturadrupal_render(&$elements)
. Para mais informações, consulte a resposta a esta pergunta semelhante .fonte
Links contextuais são úteis e realmente fáceis de implementar. Para o seu caso de uso, você precisa implementar
hook_block_view_alter()
para alterar o item #contextual_links para atender às suas necessidades. Essas referências irão ajudá-lo:GL :)
fonte