2011-03-22 66 views
2

我按照说明@Drupal: how to access to Drupal's APIs with a standalone php script?,但是,我的搜索查询返回0结果(一个空数组)。我已经确认,如果从我的drupal网页执行相同的搜索字词,则会返回结果。如何在独立的PHP页面中使用Drupal搜索?

<?php 
    chdir("drupal"); 
    define("DRUPAL_ROOT","."); 
    require_once './includes/bootstrap.inc'; 
    include 'drupal/modules/search/search.api.php'; 
    drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL); 
    $keys = array("harry","potter"); 
    $result = hook_search_execute($keys); 
    print_r($result); 
?> 

任何人都可以给我一些指针,为什么这是行不通的?非常感谢!

回答

0

问题是您直接致电hook_search_execute - 这仅适用于API文档。

所以,不需要包含search.api.php。相反,请看search_data(),它调用一个特定的模块(例如用户模块或节点模块)调用该钩子。如果您尝试搜索节点,则可以直接拨打node_search_execute()