Drupal bir acemi, anladığım yanlışsa beni düzeltin, ancak normalde, Görünümler tarafından bir Blok oluşturulduğunda, bloğun makine adı Görünümlerin makine adına eklenir.
yani "article_listing_view-block_1"
Block_load ($ module, $ block_id) işlevini kullanırken, bunu yapmamın yolu bu şekilde çağırmaktır: $ block = block_load ("views", "article_listing_view-block_1");
Ancak, çok garip bir nedenden ötürü, makine adı ile belirli bir Blok:
"Flag_comments_as_offensive-block_1"
hashed makine kimliğine sahiptir:
"92a591f5a81d13a3dd5492f073f9e135"
"Karma" diyorum, çünkü makine kimliği doğrudan bloğun makine adına göre değişiyor. Block_1'den bloke olacak şekilde değiştirirsem, değişir ve bloktan block_1'e geri döndüğümde, makine kimliğini tekrar yukarı döndürür. Dolayısıyla, makine adı ile oluşturduğu "karma" kimlik arasında doğrudan bir ilişki vardır.
Block_load ("views", "machine name") çağırmak yerine, bir sorun olmayan karma makine kimliğini kullanmak zorundayım ama bu benim için çok uzun sürdü . Bunu anlamanın yolu Yapı -> Bloklar'a gidip "Yapılandır" bağlantısının üzerine gelip URL'ye bakmaktı. Diğer tüm Bloklarımın makine kimliğini içeren bir URL'si olduğunu fark ettim , ancak bu blok için karma makine kimliği oldu. Bir kez block_load, viola içine makine kimliği koymak, bir cazibe gibi çalıştı!
Yani sanırım soru şu şekilde kayboluyor: Neler oluyor ve Drupal makine adımı neden karıştırıyor? Bu bir hata mı yoksa benim tarafımda bir hata mı?