2010-08-02 305 views
1

我試圖使用hook_search來擴展內置的drupal搜索以顯式鏈接兩種內容類型。搜索掛鉤無法正常工作

ex。項目a和b是集合a的一部分。目前,如果您搜索收藏品的標題,您只能收藏a。我想擴展搜索範圍,以便您獲得項目& b,因爲它們是該集合的成員。

我的代碼目前的樣子:

/** Implementation of hook_search() **/ 
function event_collection_search($op = 'search', $keys = NULL){ 
    var_dump($keys); echo '<--keys value'; 


    switch ($op) { 
     case 'search': 
      echo 'is this case statement being executed?'; 
      die; //MORE CODE BELOW BUT IT'S BROKEN BY THIS POINT ALREADY 

現在我的代碼不會進入「搜索」的情況下,也我注意到,鍵是NULL?我究竟做錯了什麼?如何擴展搜索範圍或至少訪問我正在搜索的值?

編輯:我打電話'死'的目的。目前,我期待無論搜索案例是否被擊中,鍵值都會被回顯。理想情況下,我希望看到'是否正在執行這個case case語句',因此我知道搜索案例正在工作。現在NULL是關鍵值,第二個字符串沒有被回顯給我。我目前只獲取集合節點的結果,但不是我已鏈接到集合節點的兩個項目。

回答

0

Drupal不使用不返回hook_search('name')的值的搜索掛鉤。

我不確定您是否可以使用echo來測試hook_search('search')是否被調用;如果你打電話給die(),那麼你看到任何東西都是不可能的,因爲在Drupal可以呈現搜索結果之前中斷了Drupal的執行。