dnadesign/silverstripe-fulltextsearchdefault

此包的最新版本(dev-master)没有可用的许可信息。

在 SilverStripe 中实现全文搜索索引和搜索表单的基本功能

安装: 31

依赖项: 0

建议者: 0

安全: 0

星标: 2

关注者: 14

分支: 1

开放问题: 0

类型:silverstripe-module

dev-master 2016-02-17 01:12 UTC

This package is auto-updated.

Last update: 2024-09-09 12:36:43 UTC


README

此模块扩展了FullTextSearch模块,提供了默认配置,包括基本的 Solr 配置和搜索结果页面。

由于 FullTextSearch 模块仍在开发中,可能会发生变化,因此该模块应被视为 alpha 版本。在不久的将来,FulltextSearch 模块也可能直接提供此功能。

安装

要开始使用 Solr,请安装此模块以及全文搜索模块,并运行 dev/build。在运行数据库重建后,启动 Solr 服务器。

全文搜索模块提供了一个基本的适合测试的服务器。要启动它,请运行

cd fulltextsearch/thirdparty/solr/server/ && java -jar start.jar &

如果 Solr 已启动并正在运行,我们应首先确保数据目录存在(默认:/data/solr)或通过 _ss_environment.php 文件中的 SOLR_BASE_PATH 值进行配置。

mkdir /data/solr

确保您的 Web 服务器可以写入该文件夹。然后,要填充该目录,请运行配置任务

sake dev/tasks/Solr_Configure

这将填充 /data/solr/FulltextSearchDefaultIndex/conf 目录,包括 schema.xmlsolrconfig.xml 等配置文件。有关这些文件的更多信息,请参阅Solr 手册

有关 SilverStripe 对 Solr 的包装的更多信息,请直接查看全文搜索模块。

用法

此模块将为 CMS 提供一个名为 FulltextSearchDefaultPage 的新页面类型,以及默认索引。有关自定义索引的更多信息,请见下文。

页面类型和索引都旨在成为开发人员扩展以充分利用 Solr 服务的起点。

扩展内置索引

要索引您自己的数据对象,请从 FulltextSearchDefaultIndex 类中派生,并添加您自己的类型。

:::php
<?php

class CustomFulltextSearchIndex extends FulltextSearchDefaultIndex {

	public function init() {
		parent::init();

		// adds a new dataobject to the search
		$this->addClass('MyDataObjectProduct');

		// define a new field to search
		$this->addFulltextField('ProductDescription', 'HTMLText')
	}
}

通过使用 Config api 告诉 FulltextSearchDefaultPage 您想使用您的新索引。

:::yml
FulltextSearchDefaultPage:
  index_class: CustomFulltextSearchIndex