Respostas:
Pela outra resposta , os blocos são "burros" e não têm a capacidade de ter argumentos "passados". No entanto, eles podem obter argumentos do contexto da página, como IDs de nós, usuário atual etc.
Você tem realmente duas opções 'fáceis':
Você não pode passar nada programaticamente para um bloco AFAIK. Você pode permitir que um bloco seja configurável (usando hook_block_configure em D7). Como alternativa, você pode criar sua própria função de tema e passar argumentos para isso. O que você está tentando fazer?
Para o caso especializado (mas generalizado) em que seu bloco é uma exibição de uma Visualização, você pode usar views_embed_view
para renderizar o bloco com os parâmetros que ele obtém através dos filtros contextuais da Visualização (ou seja, normalmente a partir da URL).
Por exemplo:
print views_embed_view('news', 'panel_pane_1', 'world');
Quaisquer parâmetros após o segundo serão passados como valores de filtro contextual para o bloco.
Fonte: Reescrita a partir desta resposta por David Thomas , licenciado CC-BY-SA 3.0