typo3 / typo3cr-search
    4.1.3
    2024-04-03 10:02 UTC
Requires
- php: >=7.3
- neos/content-repository: ^4.0 || ^5.0 || ^7.0 || ^8.0 || dev-master
- neos/flow: ^5.1 || ^6.0 || ^7.0 || ^8.0 || dev-master
Replaces
- typo3/typo3cr-search: 4.1.3
README
一个用于实现具体索引和搜索功能的Neos内容仓库搜索通用包。
相关包
一些相关包包括
Flowpack.ElasticSearch.ContentRepositoryAdaptor
用于使用Elasticsearch进行索引和搜索。
Flowpack.SimpleSearch.ContentRepositoryAdaptor
使用SQLite数据库进行索引和搜索,因此无需额外的依赖项。
Flowpack.SearchPlugin
一个插件,通过Fusion渲染为用户提供搜索功能。
内部工作原理
NodeIndexingManager监听Neos内容仓库和PersistenceManager发出的信号,如果realtimeIndexing.enabled设置为true(默认为true)。
- nodeAdded、- nodeUpdated、- afterNodePublishing触发- indexNode()
- nodeRemoved触发- removeNode()
- allObjectsPersisted触发- flushQueues
在单个请求期间,只有达到indexingBatchSize时,索引更改的队列才会被刷新(请参阅flushQueuesIfNeeded())。
如果在操作队列刷新的情况下,IndexingManager将使用NodeIndexer运行indexNode()和removeNode()。
如果realtimeIndexing.enabled设置为false,节点索引仅在手动构建时更新。