ACP2E-5143: la query GraphQL route esegue il rendering del contenuto della pagina CMS non richiesto

La patch ACP2E-5143 risolve il problema relativo al rendering dell’intero contenuto della pagina CMS, inclusi widget Page Builder ed elenchi di prodotti, da parte della query GraphQL route, anche quando vengono richiesti solo i campi di routing URL, rallentando così la risoluzione degli URL. Questa patch è disponibile quando è installato Quality Patches Tool (QPT) 1.1.84. L’ID della patch è ACP2E-5143. Tieni presente che questo problema è pianificato per essere risolto in Adobe Commerce 2.4.10.

Prodotti e versioni interessati

La patch è stata creata per la versione di Adobe Commerce:

  • Adobe Commerce (tutti i metodi di implementazione) 2.4.7-p9

Compatibile con le versioni di Adobe Commerce:

  • Adobe Commerce (tutti i metodi di implementazione) 2.4.4 - 2.4.7-p10
NOTE
La patch potrebbe diventare applicabile ad altre versioni con le nuove versioni di Quality Patches Tool. Per verificare se la patch è compatibile con la versione di Adobe Commerce in uso, aggiornare il pacchetto magento/quality-patches alla versione più recente e verificare la compatibilità nella pagina Quality Patches Tool: Cerca patch. Utilizza l’ID patch come parola chiave di ricerca per individuare la patch.

Problema

Problema in cui la query GraphQL route esegue il rendering dell’intero contenuto della pagina CMS, inclusi i widget di Page Builder e gli elenchi di prodotti, anche quando sono richiesti solo i campi di indirizzamento URL, rallentando la risoluzione dell’URL.

Prerequisiti:

Page Builder è installato.

Passaggi da riprodurre:

  1. Vai a Amministratore > Content > Elements > Pages e fai clic su Add New Page.

  2. Immettere i dettagli della pagina, impostare Enable Page su Yes e fare clic su Edit with Page Builder nella sezione Content. Espandere Add Content nel pannello Page Builder e trascinare un segnaposto Products nell’area di visualizzazione, oppure inserire un widget di prodotto catalogo nel contenuto della pagina.

  3. In Amministratore, vai a Stores > Settings > Configuration. Nel pannello a sinistra in General, scegli Web, quindi espandi Default Pages. Impostare CMS Home Page sulla nuova pagina e fare clic su Save Config.

  4. Invia la seguente richiesta GraphQL:

    code language-none
    query ResolveURL($url: String!) {
      route(url: $url) {
        relative_url
        redirect_code
        type
        ... on CmsPage { identifier __typename }
        ... on ProductInterface { uid __typename }
        ... on CategoryInterface { uid __typename }
        __typename
      }
    }
    
  5. Utilizza le seguenti variabili per la richiesta:

    code language-none
    { "url": "/" }
    

Risultati previsti:

La query route restituisce i metadati di routing e i campi discriminatori di tipo richiesti per la home page di CMS senza eseguirne il rendering completo del contenuto.

Risultati effettivi:

  1. La query route esegue il rendering dell’intero contenuto della home page di CMS anche se sono richiesti solo metadati di routing e campi discriminatori del tipo.
  2. I widget di Page Builder caricano le raccolte di prodotti, aumentando il tempo di risposta e il numero di query di database per richiesta.

Applicare la patch

Per applicare singole patch, utilizzare i collegamenti seguenti, a seconda del metodo di distribuzione utilizzato:

Lettura correlata

Per ulteriori informazioni su Quality Patches Tool, vedere:

recommendation-more-help
commerce-operations-help-tools