Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/263.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Drupal7在ApacheSolr中生成搜索结果_Php_Solr_Drupal 7 - Fatal编程技术网

Php Drupal7在ApacheSolr中生成搜索结果

Php Drupal7在ApacheSolr中生成搜索结果,php,solr,drupal-7,Php,Solr,Drupal 7,下面是我用来预处理apache solr搜索结果的代码 function apachesolr_search_apachesolr_process_results(&$results, DrupalSolrQueryInterface $query) { $rows = array(); foreach ($results as $key => $fields) { $rows [] = array( 'title' =&g

下面是我用来预处理apache solr搜索结果的代码

function apachesolr_search_apachesolr_process_results(&$results, DrupalSolrQueryInterface $query) {
    $rows = array();
    foreach ($results as $key => $fields) {

        $rows [] = array(
            'title' => t($fields['fields']['title']),
            'Category' => $fields['fields']['category'],
            'Dper' => $fields['fields']['crtor'],
            'pvalue' => $fields['fields']['pvalue'],
            'rvalue' => $fields['fields']['rvalue'],
            'avalue' => $fields['fields']['avalue'],
        );
    }

    $header = array(
        array('data' => 'title', 'field' => 'title', 'sort' => 'ASC'),
        array('data' => 'category', 'field' => 'category', 'sort' => 'ASC'),
        array('data' => 'creator', 'field' => 'creator', 'sort' => 'ASC'),
        array('data' => 'pvalue', 'field' => 'pvalue'),
        array('data' => 'rvalue', 'field' => 'rvalue'),
        array('data' => 'avalue', 'field' => 'avalue'),
    );

    $results['processresults'] = theme('table', array('header' => $header, 'rows' => $rows));
    $results['processresults'] .= theme('pager');

    return $results;
}

当我在同一个函数中打印$results['processresults']并退出时,表已经生成。如果我返回$results,而该表没有显示在我的apache solr搜索结果页面中。

传递到process_results()钩子的$results变量必须保持一定的结构,才能继续使用可能在其上调用的其余钩子和模板

因此,如果您想自定义搜索结果,我要做的是查看search results.tpl.phpsearch result.tpl.php模板文件(注意第二个文件中的单数)

您可以在核心搜索模块中找到这些文件的副本,我只需复制并粘贴这些完整的文件(甚至不需要重命名它们),然后将它们放在自定义主题的/templates/文件夹中。在清除缓存后,它们应该被拾取,因为它们现在具有优先权

search-results.tpl.php文件控制整个搜索结果页面的外观,而search-result.tpl.php文件控制显示哪个搜索结果(哪些字段、顺序等)。现在,您已经在自己的自定义主题中创建了副本,可以按任何方式修改它们


希望这足以让你开始

传递到process_results()钩子中的$results变量必须保持一定的结构,才能继续处理可能在其上调用的其余钩子和模板

因此,如果您想自定义搜索结果,我要做的是查看search results.tpl.phpsearch result.tpl.php模板文件(注意第二个文件中的单数)

您可以在核心搜索模块中找到这些文件的副本,我只需复制并粘贴这些完整的文件(甚至不需要重命名它们),然后将它们放在自定义主题的/templates/文件夹中。在清除缓存后,它们应该被拾取,因为它们现在具有优先权

search-results.tpl.php文件控制整个搜索结果页面的外观,而search-result.tpl.php文件控制显示哪个搜索结果(哪些字段、顺序等)。现在,您已经在自己的自定义主题中创建了副本,可以按任何方式修改它们


希望这足以让你开始

首先:您需要向我们展示生成结果页面的代码。如果没有修改,那就是你的答案。此外,该函数的返回值不会在任何地方使用,因为参数是通过引用传递的,因此在参数值中添加的值稍后会反映在结果中。如果没有修改,那就是你的答案。此外,该函数的返回值不会在任何地方使用,因为参数是通过引用传递的,因此在参数值中添加的值稍后会反映在结果中。谢谢你这对我帮助很大。谢谢你这对我帮助很大。