A Drupal newbie, so correct me if my understand is wrong, but normally, when a Block is created by Views, the machine name of the block is appended to the Views' machine name.
When using block_load($module, $block_id) function, the way I've been doing it is to call it thus: $block = block_load("views", "article_listing_view-block_1");
However, for some very odd reason, one particular Block with the machine name:
has a hashed machine ID of:
I say "hashed" because the machine ID changes based directly on the machine-name of the block. If I change it from block_1 to block, it will change, and when I revert back from block to block_1, it will revert the machine ID back to the above. So there's a direct correlation between the machine name and the "hashed" ID it generates.
Instead of calling block_load("views", "machine name"), I have to use the hashed machine ID, which isn't a problem but it did take me a long time to figure out. The way I figured it out was to go into Structure -> Blocks and hover over the "Configure" link and look at the URL. I noticed that all my other Blocks have a URL that included its machine ID, but for this particular block, it was the hashed machine ID. Once I put in the machine ID into block_load, viola, it worked like a charm!
So I guess the question boils down to: What's going on, and why is Drupal hashing my machine name? Is this a bug, or an error on my part?