Search Essentials

概覽

搜尋功能是AEM Communities的必備功能。 除了AEM平台搜尋功能外,AEM Communities還提供UGC搜尋API,以搜尋使用者產生的內容(UGC)。 UGC在輸入時具有唯一屬性,並與其他AEM內容和使用者資料分開儲存。

對於「社群」,通常搜尋的兩項功能為:

  • 社群成員張貼的內容

    • 使用AEM Communities的UGC搜尋API
  • 使用者和使用者群組(使用者資料)

    • 使用AEM平台搜尋功能

說明檔案的本節內容對於建立建立或管理UGC的自訂元件的開發人員而言十分有用。

安全性和卷影節點

對於自訂元件,必須使用SocialResourceUtilities方法。 建立和搜索UGC的實用程式方法將建立所需的卷影節點,並確保成員具有正確的請求權限。

未通過SRP實用程式管理的是與協調相關的屬性。

有關用於訪問UGC和ACL卷影節點的實用方法的資訊,請參見SRP和UGC Essentials

UGC搜尋API

UGC公共儲存由多種儲存資源提供器(SRP)之一提供,每個儲存資源提供器可能具有不同的本地查詢語言。 因此,無論選擇何種SRP,自訂代碼都應使用UGC API套件(com.adobe.cq.social.ugc.api)中的方法,這些方法將調用適合於所選SRP的查詢語言。

ASRP搜索

對於ASRP,UGC會儲存在Adobe雲端。 雖然UGC在CRX中不可見,但moderation可從作者和發佈環境使用。 使用UGC搜索API對ASRP的作用與對其他SRP的作用相同。

目前不存在用於管理ASRP搜索的工具。

建立可搜尋的自訂屬性時,必須符合命名要求

MSRP搜尋

對於MSRP,UGC儲存在配置為使用Solr進行搜索的MongoDB中。 UGC在CRX中不會顯示,但moderation可從作者和發佈環境使用。

關於MSRP和Solr:

  • AEM平台的內嵌Solr不用於MSRP
  • 如果將遠端Solr用於AEM平台,則可能會與MSRP共用,但他們應使用不同的系列
  • Solr可設定為標準搜尋或多語言搜尋(MLS)
  • 有關配置詳細資訊,請參見Solr Configuration for MSRP

自訂搜尋功能應使用UGC搜尋API

建立可搜尋的自訂屬性時,必須符合命名要求

JSRP搜索

對於JSRP,UGC會儲存在Oak中,且僅會顯示在輸入AEM作者的儲存庫或發佈例項中。

由於UGC通常是在發佈環境中輸入的,對於多發佈者生產系統,因此必須配置發佈叢集,而非發佈叢集,以便所有發佈者都能看到輸入的內容。

對於JSRP,在發佈環境中輸入的UGC在作者環境中將不可見。 因此,所有協調工作都會在發佈環境中進行。

自訂搜尋功能應使用UGC搜尋API

Oak索引

雖然Oak索引不會自動為AEM平台搜尋建立,但是從AEM 6.2開始,已為AEM Communities新增這些索引,以改善效能並在呈現UGC搜尋結果時提供分頁支援。

如果自訂屬性正在使用中且搜尋速度緩慢,則需要為自訂屬性建立其他索引,以提高其效能。 若要維持可移植性,在建立可搜尋的自訂屬性時,請遵循命名需求

若要修改現有索引或建立自訂索引,請參閱Oak Queries and Indexing

Oak Index Manager可從ACS AEM Commons取得。 它提供:

  • 現有索引的檢視
  • 啟動重新索引的能力

若要檢視CRXDE Lite中現有的Oak索引,其位置為:

  • /oak:index/socialLucene

chlimage_1-235

索引搜索屬性

預設搜索屬性

以下是用於各種「社群」功能的一些可搜尋屬性:

屬性 資料類型
isPratged 布林值 (Boolean)
isSpam 布林值 (Boolean)
讀取 布林值 (Boolean)
影響 布林值 (Boolean)
附件 布林值 (Boolean)
情緒 長整數
已標籤 布林值 (Boolean)
已新增 日期
modifiedDate 日期
狀態 String
userIdentifier 字串
回覆 長整數
jcr:title 字串
jcr:description 字串
sling:resourceType 字串
allowThreadedReply 布林值 (Boolean)
isDraft 布林值 (Boolean)
publishDate 日期
publishJobId 字串
已回答 布林值 (Boolean)
喬森納 布林值 (Boolean)
標籤 字串
cq:Tag 字串
author_display_name 字串
location_t 字串
parentPath 字串
parentTitle 字串

自訂屬性的命名

新增自訂屬性時,為了讓這些屬性對使用UGC搜尋API建立的排序和搜尋可見,必須使用*required *才能在屬性名稱中新增字尾。

尾碼用於使用架構的查詢語言:

  • 它會將屬性識別為可搜尋
  • 它識別資料類型

Solr是使用架構的查詢語言的示例。

字尾 資料類型
_b 布林值 (Boolean)
_dt 日曆
_d 雙精準數
_tl 長整數
_s 字串
_t 文字

附註:

  • Textis a token化字串, ** Stringis not.使用​Text​進行模糊搜尋(更類似此)。

  • 對於多值類型,請在尾碼中添加「s」,例如:

    • viewDate_dt:單一日期屬性
    • viewDates_dts:dates屬性清單

濾鏡

包含注釋系統的元件支援將過濾器參數添加到其端點。

AND和OR邏輯的篩選語法如下所示(在進行URL編碼前顯示):

  • 若要指定OR,請使用一個具有逗號分隔值的篩選參數:

    • filter=name eq 'Jennifer',name eq 'Jen'
  • 要指定AND,請使用多個篩選參數:

    • filter = name eq 'Jackson'&filter=message eq 'testing'

Search元件的預設實作會使用此語法,如Community Components指南中開啟「搜尋結果」頁面的URL所示。 若要實驗,請瀏覽至http://localhost:4503/content/community-components/en/search.html

篩選運算子有:

EQ 等於
NE 不等於
LT 小於
LTE 小於或等於
GE 大於
GTE 大於或等於
模糊匹配

URL必須參照Communities元件(資源),而非放置元件的頁面:

  • 正確:論壇元件
    • /content/community-components/en/forum/jcr:content/content/forum.social.json
  • 錯誤:論壇頁面
    • /content/community-components/en/forum.social.json

SRP工具

Adobe Marketing Cloud GitHub專案包含:

AEM Communities SRP工具

此儲存庫包含用於管理SRP中資料的工具。

目前,有一個Servlet可以從任何SRP中刪除所有UGC。

例如,若要刪除ASRP中的所有UGC:

curl -X POST http://localhost:4502/services/social/srp/cleanup?path=/content/usergenerated/asi/cloud -uadmin:admin

疑難排解

Solr查詢

若要協助疑難排解Solr查詢的問題,請啟用

com.adobe.cq.social.srp.impl.SocialSolrConnector

實際的Solr查詢會顯示在偵錯記錄中編碼的URL:

對索爾的查詢是:sort=timestamp+desc&bl=en&pl=en&start=0&rows=10 &q=%2Btitle_t:(hello)+%2Bprovider_id:\/content/usergenerated/asi/mongo/content/+%2Bresource_type_s:&df=provider_id&trf=verbatim&fq={!cost%3D100}report_suite:mongo

q參數的值是查詢。 一旦解碼URL編碼,查詢就可以傳遞至Solr Admin Query工具,以進一步除錯。

本頁內容

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now