Un novato de Drupal, así que corrígeme si entiendo mal, pero normalmente, cuando Vistas crea un Bloque, el nombre de la máquina del bloque se agrega al nombre de la máquina de Vistas.
es decir, "article_listing_view-block_1"
Cuando uso la función block_load ($ module, $ block_id), la forma en que lo he estado haciendo es llamarlo así: $ block = block_load ("views", "article_listing_view-block_1");
Sin embargo, por alguna razón muy extraña, un bloque en particular con el nombre de la máquina:
"flag_comments_as_offensive-block_1"
tiene una ID de máquina hash de:
"92a591f5a81d13a3dd5492f073f9e135"
Digo "hash" porque la ID de la máquina cambia directamente en función del nombre de la máquina del bloque. Si lo cambio de block_1 a block, cambiará, y cuando regrese de block a block_1, revertirá la ID de la máquina a la anterior. Por lo tanto, existe una correlación directa entre el nombre de la máquina y la identificación "hash" que genera.
En lugar de llamar a block_load ("vistas", "nombre de la máquina"), tengo que usar la ID de la máquina hash, lo cual no es un problema, pero me llevó mucho tiempo descubrirlo. La forma en que lo descubrí fue ir a Estructura -> Bloques y pasar el cursor sobre el enlace "Configurar" y mirar la URL. Noté que todos mis otros Bloques tienen una URL que incluía su ID de máquina, pero para este bloque en particular, era la ID de máquina hash. Una vez que puse la ID de la máquina en block_load, viola, ¡funcionó de maravilla!
Así que supongo que la pregunta se reduce a: ¿Qué está pasando y por qué Drupal está descifrando el nombre de mi máquina? ¿Es esto un error o un error de mi parte?
Los nombres de las máquinas de vistas solo se combinan si el nombre tiene más de 32 caracteres de longitud.
fuente