Nozioni di base sulla ricerca

Panoramica

La funzione di ricerca è una funzione essenziale di AEM Communities. Oltre al Ricerca su piattaforma AEM AEM Communities fornisce API di ricerca UGC allo scopo di cercare contenuti generati dall’utente (UGC). UGC ha proprietà univoche in quanto viene immesso e memorizzato separatamente dagli altri contenuti AEM e dati utente.

Per Communities, i due elementi generalmente ricercati sono:

  • Contenuto pubblicato da membri della community

    • Utilizza l’API di ricerca UGC di AEM Communities.
  • Utenti e gruppi di utenti (dati utente)

    • Utilizza le funzionalità di ricerca della piattaforma AEM.

Questa sezione della documentazione è di interesse per gli sviluppatori che creano componenti personalizzati che creano o gestiscono UGC.

Nodi di sicurezza e ombreggiatura

Per un componente personalizzato, è necessario utilizzare il SocialResourceUtilities metodi. I metodi di utilità che creano e cercano UGC stabiliranno i requisiti richiesti nodi ombra e assicurati che il membro disponga delle autorizzazioni corrette per la richiesta.

Ciò che non viene gestito tramite le utility SRP sono proprietà correlate alla moderazione.

Vedi Essenze SRP e UGC per informazioni sui metodi di utilità utilizzati per accedere ai nodi shadow UGC e ACL.

API di ricerca UGC

La Archivio comune UGC è fornito da uno dei vari provider di risorse di archiviazione (SRP), ognuno dei quali può avere un linguaggio di query nativo diverso. Pertanto, indipendentemente dall’SRP scelto, il codice personalizzato deve utilizzare i metodi della Pacchetto API UGC (com.adobe.cq.social.ugc.api) che richiamerà il linguaggio di query appropriato per l’SRP scelto.

Ricerche ASRP

Per ASRP, UGC viene memorizzato in Adobe cloud. Mentre UGC non è visibile in CRX, moderazione è disponibile sia negli ambienti di authoring che di pubblicazione. L'uso del API di ricerca UGC funziona per ASRP come per altri SRP.

Al momento non esistono strumenti per la gestione delle ricerche ASRP.

Quando si creano proprietà personalizzate ricercabili, è necessario aderire al requisiti di denominazione.

Ricerche MSRP

Per MSRP, UGC viene memorizzato in MongoDB configurato per utilizzare Solr per la ricerca. UGC non sarà visibile in CRX, ma moderazione è disponibile sia negli ambienti di authoring che di pubblicazione.

Per quanto riguarda MSRP e Solr:

  • Il Solr incorporato per la piattaforma AEM non viene utilizzato per MSRP.
  • Se si utilizza un Solr remoto per la piattaforma AEM, può essere condiviso con MSRP, ma deve utilizzare raccolte diverse.
  • Solr può essere configurato per la ricerca standard o per la ricerca multilingue (MLS).
  • Per informazioni dettagliate sulla configurazione, consulta Configurazione Solr per MSRP.

Le funzioni di ricerca personalizzate devono utilizzare API di ricerca UGC.

Quando si creano proprietà personalizzate ricercabili, è necessario aderire al requisiti di denominazione.

Ricerche JSRP

Per JSRPUGC è memorizzato in Oak ed è visibile solo nell’archivio dell’istanza di authoring o pubblicazione AEM in cui è stato inserito.

Poiché l’UGC viene generalmente immesso nell’ambiente di pubblicazione per i sistemi di produzione con più editori, è necessario configurare un pubblicare un cluster, non una farm di pubblicazione, in modo che il contenuto immesso sia visibile da tutti gli editori.

Per JSRP, l’UGC immesso nell’ambiente di pubblicazione non sarà mai visibile nell’ambiente di authoring. Così tutti moderazione le attività vengono eseguite nell’ambiente di pubblicazione.

Le funzioni di ricerca personalizzate devono utilizzare API di ricerca UGC.

Indicizzazione Oak

Sebbene gli indici Oak non vengano creati automaticamente per la ricerca della piattaforma AEM, a partire dalla AEM 6.2 sono stati aggiunti per AEM Communities per migliorare le prestazioni e fornire il supporto per l’impaginazione durante la presentazione dei risultati della ricerca UGC.

Se le proprietà personalizzate sono in uso e le ricerche sono lente, è necessario creare indici aggiuntivi affinché le proprietà personalizzate siano più performanti. Per mantenere la portabilità, fai riferimento al requisiti di denominazione durante la creazione di proprietà personalizzate ricercabili.

Per modificare gli indici esistenti o creare indici personalizzati, consulta Query e indicizzazione Oak.

La Gestione indici Oak è disponibile da ACS AEM Commons. Fornisce:

  • Visualizzazione degli indici esistenti.
  • La capacità di avviare la reindicizzazione.

Per visualizzare gli indici Oak esistenti in CRXDE Lite, la posizione è:

  • /oak:index/socialLucene

social-lucene

Proprietà di ricerca indicizzate

Proprietà di ricerca predefinite

Di seguito sono riportate alcune delle proprietà ricercabili utilizzate per varie funzioni di Communities:

Proprietà Tipo di dati
isFlagged Booleano
isSpam Booleano
read Booleano
influenza Booleano
allegati Booleano
sentimento Lungo
contrassegnato Booleano
aggiunto Data
modifiedDate Data
stadio Stringa
userIdentifier Stringa
risposte Lungo
jcr:title Stringa
jcr:description Stringa
sling:resourceType Stringa
allowThreadedReply Booleano
isDraft Booleano
publishDate Data
publishJobId Stringa
ha risposto Booleano
scettico Booleano
tag Stringa
cq:Tag Stringa
author_display_name Stringa
location_t Stringa
parentPath Stringa
parentTitle Stringa

Denominazione delle proprietà personalizzate

Quando si aggiungono proprietà personalizzate, affinché tali proprietà siano visibili agli ordini e alle ricerche creati con API di ricerca UGC, obbligatorio per aggiungere un suffisso al nome della proprietà.

Il suffisso è destinato ai linguaggi di query che utilizzano uno schema:

  • Identifica la proprietà come ricercabile.
  • Identifica il tipo di dati.

Solr è un esempio di linguaggio di query che utilizza uno schema.

Suffisso Tipo di dati
_b Booleano
_dt Calendario
_d Doppio
_tl Lungo
_s Stringa
_t Testo

Note:

  • Testo è una stringa token, Stringa non lo è. Utilizzo Testo cerca fuzzy (più così) ricerche.

  • Per i tipi con più valori, aggiungi "s" al suffisso, ad esempio:

    • viewDate_dt: proprietà data singola
    • viewDates_dts: list date, proprietà

Filtri

Componenti che includono sistema di commento supporta l’aggiunta del parametro del filtro ai relativi endpoint.

La sintassi del filtro per la logica AND e OR viene espressa come segue (mostrato prima di essere codificato nell’URL):

  • Per specificare OR utilizzare un parametro di filtro con valori separati da virgole:

    • filter=name eq 'Jennifer',name eq 'Jen'
  • Per specificare e utilizzare più parametri di filtro:

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

Implementazione predefinita del Componente di ricerca utilizza questa sintassi come è possibile vedere nell’URL che apre la pagina Risultati ricerca nel Guida ai componenti della community. Per sperimentare, sfoglia fino a http://localhost:4503/content/community-components/en/search.html.

Gli operatori di filtro sono:

EQ è uguale a
NE non è uguale a
LT inferiore a
LTE minore o uguale a
GE maggiore di
GTE maggiore o uguale a
LIKE abbinamento sfuocato

È importante che l’URL faccia riferimento al componente Community (risorsa) e non alla pagina in cui è posizionato il componente:

  • Corretto: componente forum
    • /content/community-components/en/forum/jcr:content/content/forum.social.json
  • Errato: pagina forum
    • /content/community-components/en/forum.social.json

Strumenti SRP

Esiste un progetto GitHub Adobe Marketing Cloud che contiene:

Strumenti AEM Communities SRP

Questo archivio contiene strumenti per la gestione dei dati nell’SRP.

Attualmente, esiste un servlet che offre la possibilità di eliminare tutti gli UGC da qualsiasi SRP.

Ad esempio, per eliminare tutti gli UGC nell’ASRP:

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

Risoluzione dei problemi

Query Solr

Per risolvere i problemi relativi a una query Solr, abilita la registrazione DEBUG per

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

La query Solr effettiva verrà visualizzata con URL codificato nel registro di debug:

La query da solr è: 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

Il valore del q è la query. Una volta decodificata la codifica URL, la query può essere passata allo strumento Solr Admin Query per un ulteriore debug.

In questa pagina