2012-03-25 64 views
0

我的模塊定義了可變數量的塊,然後將它們提供給「塊」模塊用於顯示特定區域。我的模塊如何通知drupal Block模塊不再存在塊?

當我的模塊刪除一個塊時,drupal仍然認爲它存在。我該如何告訴drupal一個塊應該被丟棄?我正在尋找類似block_delete($ module,$ delta)的東西,但那不存在。

乾杯,

Albert。

+0

你不需要。如果hook_block()在你的模塊的某處被調用,則會添加一個塊。你的意思是「當我的模塊刪除一個塊」到底是什麼意思?它是否像在/ admin/build/block/add中添加自定義塊一樣創建「自定義塊」? – 2012-03-26 05:03:55

+0

嗨,謝謝你的回答。下面是一個更具體的例子:(1)用戶進入我的模塊的管理頁面,可以添加/編輯/刪除任意數量的「塊」。然後通過hook_block()使塊模塊可見。 (2)用戶然後將這些塊中的一個(比如delta 1)放在給定的區域中。 (3)用戶回到管理頁面,並刪除塊增量1(4)現在訪問任何頁面給我一個錯誤,因爲塊系統「認爲」,我的模塊塊增量1仍然在一個區域,但它不再存在。所以:刪除我的塊時,如何強制塊模塊從所有區域刪除它? – alberto56 2012-03-26 15:39:56

回答

1

您可以在塊表中搜索塊的任何引用,並將它們從用於刪除塊的表單的提交功能中的表中刪除。我認爲沒有更清晰的方法來確保塊被移除。您可以查看menu_block如何處理(如果沒有)。