Impossibile modificare il motore di ricerca con Commerce Admin (il menu del motore di ricerca non è accessibile)
Avviso: Il motore di ricerca del catalogo MySQL verrà rimosso in Adobe Commerce 2.4.0. Prima di installare la versione 2.4.0, è necessario aver configurato e configurato l’host Elasticsearch.
Consulta:
Installa e configura Elasticsearch.
Installa e configura Opensearch
Installa e configura Live Search
Questo articolo fornisce una soluzione per modificare il motore di ricerca di Adobe Commerce utilizzando l'amministratore di Commerce se il campo Motore di ricerca non è visualizzato o se la casella di controllo Usa valore di sistema è disattivata e non accessibile.
Descrizione
Ambiente
-
Adobe Commerce on-premise: 2.4.X
-
Adobe Commerce sull’infrastruttura cloud:
- Versione: 2.4.X
- Architettura del piano Starter e Pro
-
MySQL, Elasticsearch, Opensearch, Live Search: tutte le versioni supportate
Modificare il motore di ricerca tramite Admin (passaggi)
-
Accedi a Admin come amministratore.
-
Sul lato sinistro della barra laterale Admin, fai clic su Archivi.
-
In Impostazioni scegliere Configurazione.
-
Passa al pannello a sinistra in Catalogo e scegli Catalogo.
-
Espandi la sezione Ricerca nel catalogo.
-
Vai al campo Motore di ricerca e rimuovi la selezione dalla casella di controllo Usa valore di sistema.
-
Fare clic sul menu Motore di ricerca e selezionare una delle opzioni disponibili, come illustrato di seguito.
-
Fai clic su Salva configurazione nell'angolo superiore destro della pagina.
Problemi relativi ad Adobe Commerce on-premise
Problema 1: il campo Motore di ricerca non viene visualizzato
Quando accedi alla sezione Ricerca nel catalogo, il menu Motore di ricerca non viene visualizzato.
Causa: la vista archivio non è una configurazione predefinita
La visualizzazione archivio per l'amministratore è stata impostata su un valore diverso da Configurazione predefinita.
Il motore di ricerca è una configurazione globale impostata a livello di applicazione, non nell'ambito dell'archivio. Gli archivi all’interno di un’applicazione Adobe Commerce non possono utilizzare motori di ricerca diversi.
Problema 2: impossibile deselezionare "Usa valore di sistema"
Quando accedi alla sezione Ricerca nel catalogo dell'amministratore, la casella di controllo Usa valore di sistema è disattivata, pertanto non puoi rimuovere la selezione dalla casella di controllo per cambiare il motore di ricerca in un secondo momento.
Causa
Il motore di ricerca predefinito è stato configurato nel livello di configurazione dell'applicazione nei file app/etc/env.php
o app/etc/config.php
e pertanto non può essere modificato con Admin.
Esempio della sezione con configurazione predefinita del motore di ricerca:
'system'=>
array (
'default'=>
array (
'catalog'=>
array (
'search'=>
array (
'engine'=>'mysql',
),
),
),
),
Risoluzione
Problema 1: il campo Motore di ricerca non viene visualizzato
Soluzione: impostare la visualizzazione archivio su Configurazione predefinita
-
Accedi a Admin come amministratore.
-
Sul lato sinistro della barra laterale Admin, fai clic su Archivi.
-
Passa a Impostazioni e scegli Configurazione.
-
Nell'angolo superiore sinistro fare clic sul selettore Visualizzazione store e scegliere Configurazione predefinita.
-
Fai clic su OK nella finestra di dialogo di conferma per approvare le modifiche alla visualizzazione dello store.
Documentazione correlata: Modifica dell'ambito nella guida utente.
Problema 2: impossibile deselezionare "Usa valore di sistema"
Soluzione
Rimuovere la sezione con la configurazione predefinita del motore di ricerca dai file di configurazione app/etc/env.php
o app/etc/config.php
.
Articoli correlati nella documentazione per sviluppatori
File di configurazione di Adobe Commerce nella Guida alla configurazione di Adobe Commerce
Adobe Commerce sull’infrastruttura cloud
Il passaggio da un motore di ricerca all’altro utilizzando l’amministratore non è disponibile in Adobe Commerce sull’infrastruttura cloud a causa del modo in cui questa è stata organizzata.
Durante il processo di distribuzione, gli script di distribuzione dell'infrastruttura cloud di Adobe Commerce verificano se Elasticsearch è stato dichiarato nella variabile MAGENTO_CLOUD_RELATIONSHIPS
. Se dichiarato, Elasticsearch viene selezionato come motore di ricerca attivo e configurato automaticamente; il motore di ricerca MySQL diventa inaccessibile in Admin. Se la relazione Elasticsearch non è stata dichiarata, MySQL è impostato su attivo e Elasticsearch diventa inaccessibile.
Si consiglia di non modificare i file di configurazione app/etc/env.php
o app/etc/config.php
direttamente nell'ambiente cloud. Per questo motivo, la modifica di questi file per rendere il motore di Elasticsearch visibile nell'amministratore (la soluzione consigliata nella sezione precedente) non è applicabile al progetto cloud.
Modificare il motore di ricerca negli ambienti di staging e produzione
Prima di passare dal motore di ricerca di MySQL ad Elasticsearch negli ambienti di staging e produzione, assicurati di aver inviato in precedenza un ticket di supporto richiedendo di abilitare Elasticsearch nell'ambiente e che il ticket sia stato risolto correttamente.
Per cambiare il motore di ricerca utilizzato negli ambienti di staging e produzione, modifica la variabile di ambiente SEARCH_CONFIGURATION
nel file .magento.env.yaml
nell'ambiente locale, quindi invia le modifiche agli ambienti di integrazione e staging/produzione affinché le modifiche diventino effettive.
Se si passa ad Elasticsearch 7, la variabile SEARCH_CONFIGURATION
nel file .magento.env.yaml
risultante potrebbe avere il seguente aspetto:
stage:
deploy:
SEARCH_CONFIGURATION:
engine: elasticsearch7
elasticsearch_server_hostname: hostname
elasticsearch_server_port: '12345'
elasticsearch_index_prefix: magento
elasticsearch_server_timeout: '15'
Se si passa a Opensearch (in 2.4.6 e versioni successive), la variabile SEARCH_CONFIGURATION
nel file .magento.env.yaml
risultante potrebbe avere il seguente aspetto:
stage:
deploy:
SEARCH_CONFIGURATION:
engine: opensearch
elasticsearch_server_hostname: hostname
elasticsearch_server_port: '12345'
elasticsearch_index_prefix: magento
elasticsearch_server_timeout: '15'
Se passi a Live Search, la variabile SEARCH_CONFIGURATION
nel file .magento.env.yaml
risultante potrebbe avere il seguente aspetto:
stage:
deploy:
SEARCH_CONFIGURATION:
engine: livesearch
Documentazione correlata
Knowledge base di supporto
Documentazione per gli sviluppatori
- Configura servizio Elasticsearch
- Genera e distribuisci (documentazione sul file di configurazione
.magento.env.yaml
) - Distribuisci variabili (sezione SEARCH_CONFIGURATION)
- Servizi (documentazione sul file di configurazione
.magento/services.yaml
) - Live Search