How to render a block in php for a special node id I would like to render a block from only one node on all node pages. But all the code I found to render blocks never takes the nid as an input. Is there a possibility that I can trick the block renderer into thinking it is on a different page?

If it is of any help: In my case I want to render the block for Opening hours from one node id on all pages. So I do not have to add the same opening hours for every node.
Add this to your theme's template.php file:

function THEME_block_view_alter(&amp;$data, $block) {
  if ($block-&gt;module == 'opening_hours' &amp;&amp; $block-&gt;delta == 'week') {
    $node_fixed = node_load(77); // swap out 77 for your node's id
    if ($node_fixed) {
      $data['content']['#node'] = $node_fixed;
    }
  }
}