Caratteristiche principali di Magento Open Source 2.4.7

In questa versione, cerca le seguenti aree di rilievo.

Miglioramenti di sicurezza

Questa versione include le stesse correzioni di sicurezza e gli stessi miglioramenti di sicurezza della piattaforma inclusi in Adobe Commerce 2.4.6-p5, 2.4.5-p7 e 2.4.4-p8. Per le ultime discussioni su questi problemi risolti, consulta il Bollettino sulla sicurezza di Adobe.

Ad oggi non si sono verificati attacchi confermati relativi a questi problemi. Tuttavia, alcune vulnerabilità possono potenzialmente essere sfruttate per accedere alle informazioni dei clienti o assumere il controllo delle sessioni dell’amministratore. La maggior parte di questi problemi richiede che un utente malintenzionato ottenga prima l’accesso all’amministratore. Di conseguenza, ti ricordiamo di adottare tutte le misure necessarie per proteggere il tuo amministratore, incluse, ma non solo, queste iniziative:

  • INSERIRE NELL'ELENCO CONSENTITI IP
  • autenticazione a due fattori
  • utilizzo di una VPN
  • utilizzo di una posizione univoca anziché /admin
  • corretta igiene della password

Ulteriori miglioramenti della sicurezza

Miglioramenti di sicurezza per questa versione migliorano la conformità alle più recenti best practice di sicurezza.

  • Modifiche al comportamento delle chiavi della cache non generate:

    • Le chiavi della cache non generate per i blocchi ora includono prefissi che differiscono dai prefissi per le chiavi generate automaticamente. Le chiavi della cache non generate sono chiavi impostate tramite la sintassi di direttiva del modello o i metodi setCacheKey o setData.
    • Le chiavi della cache non generate per i blocchi ora devono contenere solo lettere, cifre, trattini (-) e caratteri di sottolineatura (_).
  • Limitazioni al numero di codici coupon generati automaticamente. Magento Open Source ora limita il numero di codici coupon generati automaticamente. Il valore massimo predefinito è 250.000. I commercianti possono utilizzare la nuova opzione di configurazione Code Quantity Limit (Stores > Settings:Configuration > Customers > Promotions) per evitare di sovraccaricare il sistema con molti coupon.

  • Ottimizzazione del processo predefinito di generazione URL amministratore. La generazione dell’URL amministratore predefinito è stata ottimizzata per una maggiore casualità, il che rende gli URL generati meno prevedibili.

  • Una nuova impostazione di configurazione della cache a pagina intera può aiutare a mitigare i rischi associati all'endpoint HTTP {BASE-URL}/page_cache/block/esi. Questo endpoint supporta frammenti di contenuto senza restrizioni e caricati dinamicamente dagli handle di layout e dalle strutture di blocco di Commerce. La nuova impostazione di configurazione Handles params size imposta il valore del parametro handles di questo endpoint, che determina il numero massimo consentito di handle per API. Il valore predefinito di questa proprietà è 100. I commercianti possono modificare questo valore dall'amministratore (Stores > Settings:Configuration > System > Full Page Cache > Handles params size). Vedere Configurare l'applicazione Commerce per l'utilizzo di Vernice.

  • È stato aggiunto il supporto per l'integrità della sottorisorsa (SRI) per soddisfare i requisiti PCI 4.0 per la verifica dell'integrità dello script nelle pagine di pagamento. Il supporto per l’integrità della sottorisorsa (SRI) fornisce hash di integrità per tutte le risorse JavaScript che risiedono nel file system locale. La funzione SRI predefinita viene implementata solo nelle pagine di pagamento per le aree Admin e Storefront. Tuttavia, i commercianti possono estendere la configurazione predefinita ad altre pagine. Vedere Subresource Integrity nella Commerce PHP Developer Guide.

  • Modifiche alle direttive Content Security Policy (CSP)—Aggiornamenti alla configurazione e miglioramenti alle direttive Adobe Commerce Content Security Policy (CSP) per la conformità ai requisiti PCI 4.0. Per informazioni dettagliate, vedere Informativa sulla sicurezza dei contenuti nella Guida per gli sviluppatori di Commerce PHP.

    • La configurazione CSP predefinita per le pagine di pagamento per le aree di amministrazione e vetrina di Commerce è ora in modalità restrict. Per tutte le altre pagine, la configurazione predefinita è la modalità report-only. Nelle versioni precedenti alla versione 2.4.7, CSP era configurato in modalità report-only per tutte le pagine.

    • È stato aggiunto un provider nonce per consentire l’esecuzione di script in linea in un CSP. Il provider di nonce facilita la generazione di stringhe di nonce univoche per ogni richiesta. Le stringhe vengono quindi collegate all’intestazione CSP.

    • Sono state aggiunte opzioni per configurare URI personalizzati in modo da segnalare le violazioni CSP per le pagine Crea ordine in Amministrazione e Pagamento nella vetrina. È possibile aggiungere la configurazione dall'amministratore o aggiungendo l'URI al file config.xml.

      NOTA
      L'aggiornamento della configurazione CSP alla modalità restrict potrebbe bloccare gli script in linea esistenti nelle pagine di pagamento in Admin e storefront, causando il seguente errore del browser al caricamento di una pagina: Refused to execute inline script because it violates the following Content Security Policy directive: "script-src. Correggi questi errori aggiornando la configurazione della whitelist per consentire gli script richiesti. Consulta Risoluzione dei problemi nella Guida per gli sviluppatori di Commerce PHP.
  • Limitazione della tariffa nativa per le informazioni di pagamento trasmesse tramite API REST e GraphQL. I commercianti possono ora configurare la limitazione della tariffa per le informazioni di pagamento trasmesse utilizzando REST e GraphQL. Questo livello di protezione aggiuntivo supporta la prevenzione degli attacchi di carte di credito e potenzialmente riduce il volume di attacchi di carte di credito che testano molti numeri di carta di credito contemporaneamente. Si tratta di una modifica del comportamento predefinito di un endpoint REST esistente. Vedi Limitazione di frequenza.

  • Il comportamento predefinito della query GraphQL isEmailAvailable e dell'endpoint REST (V1/customers/isEmailAvailable) è stato modificato. Per impostazione predefinita, le API ora restituiscono sempre true. Gli esercenti possono abilitare il comportamento originale impostando l'opzione Abilita accesso per cassa ospite nell'amministratore su yes, ma in questo modo è possibile esporre le informazioni del cliente a utenti non autenticati.

Miglioramenti alla piattaforma

Gli aggiornamenti della piattaforma per questa versione migliorano la conformità alle best practice di sicurezza più recenti.

Magento Open Source 2.4.7 include i seguenti aggiornamenti della piattaforma:

  • Compatibilità PHP 8.3. Questa versione introduce il supporto per PHP 8.3. Magento Open Source ora supporta sia PHP 8.3 che 8.2. PHP 8.2 sarà supportato fino alla data di fine servizio (EOS) nel dicembre 2025. Dopo dicembre 2025, tutti i commercianti che eseguono implementazioni 2.4.7 dovrebbero migrare a PHP 8.3.

Magento Open Source 2.4.7 è ancora compatibile con PHP 8.1 solo a scopo di aggiornamento. PHP 8.1 non è supportato e non è consigliato. Il codice di base di Magento Open Source 2.4.7, tutte le estensioni in bundle e tutte le estensioni di proprietà di Adobe e i servizi SaaS sono compatibili con PHP 8.3.

  • Supporto di RabbitMQ 3.13. Questa versione è compatibile con l’ultima versione di RabbitMQ 3.13. La compatibilità rimane con RabbitMQ 3.11 e 3.12, che è supportato rispettivamente fino ad agosto 2024 e dicembre 2024, ma Adobe consiglia di utilizzare Magento Open Source 2.4.7 solo con RabbitMQ 3.13.

  • Compositore 2.7.x. La compatibilità con Composer 2.2.x rimane.

  • Supporto cache di vernice 7.4. Questa versione è compatibile con la versione più recente di Varnish Cache 7.4. La compatibilità rimane con le versioni 6.0.x e 7.2.x, ma si consiglia di utilizzare Magento Open Source 2.4.7 solo con Vernice Cache versione 7.4 o 6.0 LTS.

  • Compatibilità con Elasticsearch 8.11

  • OpenSearch 2.12 e OpenSearch 1.3 supportano

  • Redis 7.2

  • La libreria extjs è stata sostituita con la versione più recente di jsTree.

  • Libreria jquery/fileUpload rimossa.

Tutte le librerie JavaScript e le dipendenze NPM nel codice di base Magento Open Source sono state aggiornate alle versioni più recenti disponibili. Tutte le dipendenze della libreria Laminas sono state aggiornate alla versione più recente compatibile con PHP 8.3.

Aggiornamenti aggiuntivi

  • Il gateway API XML di Commerce UPS è stato migrato alla nuova API REST di Commerce UPS per supportare gli aggiornamenti che UPS sta apportando al proprio modello di sicurezza API. (UPS sta implementando un modello di sicurezza OAuth 2.0 (token portatore) per tutte le API.) Tutte le precedenti API XML di Commerce UPS sono state rimosse dalla codebase di Magento Open Source 2.4.7.

  • La Magento Open Source integrazione con FedEx è stata migrata dai servizi Web FedEx WSDL legacy alle più recenti API FedEx RESTful. FedEx Web Services Tracking, Address Validation, and Validate Postal Codes WSDLS sarà ritirato nel maggio 2024.

  • È stato aggiunto il supporto per il nuovo metodo di spedizione USPS Ground Advantage. Si tratta di un’integrazione standard con il nuovo metodo di spedizione di USPS, USPS Ground Advantage, rilasciato a luglio 2023. Questa nuova integrazione può essere utilizzata per recuperare le tariffe di spedizione e pianificare consegne e restituzioni tramite il servizio di spedizione USPS. Il metodo di spedizione USPS Ground Advantage sostituisce questi metodi di spedizione, che sono stati ritirati quando è stato rilasciato il metodo di spedizione USPS Ground Advantage:

    • USPS Retail Ground
    • Servizio pacchetti di prima classe
    • Seleziona terreno
  • I moduli di spedizione Temando sono stati rimossi dalla base di codice principale di Magento Open Source. Questa funzionalità è stata rimossa in Magento Open Source 2.4.4.

Miglioramenti a livello di prestazioni e scalabilità

Magento Open Source 2.4.7 include i seguenti miglioramenti alle prestazioni e alla scalabilità di Magento Open Source:

  • Gestione avanzata degli indicizzatori. Il nuovo indexer:set-status comando supporta la gestione dinamica dello stato dell'indicizzatore. Gli utenti amministratori possono utilizzare questo comando per modificare lo stato dell'indicizzatore in suspended, invalido valid. Questa funzione è particolarmente utile per gestire le prestazioni del sistema durante operazioni in blocco estese, come importazioni di prodotti o aggiornamenti, consentendo il controllo su quando gli indicizzatori vengono attivati automaticamente dai cron job del sistema. Vedere Gestire gli indicizzatori.

  • Pagina di elenco dei prodotti per prodotti complessi con molte opzioni. Il tempo di caricamento è migliorato per le pagine di elenco dei prodotti che includono prodotti complessi con oltre 100 opzioni. Anche le prestazioni delle richieste GraphQL di elencare i prodotti per categoria sono migliorate.

  • Miglioramenti delle prestazioni della regola di vendita. Sono state migliorate le prestazioni delle implementazioni aziendali con molte regole di vendita attive (circa 100.000). Le distribuzioni aziendali che implementano in modo significativo le promozioni spesso implementano molte regole attive del carrello. In questi tipi di distribuzioni aziendali in cui è in esecuzione Magento Open Source 2.4.7 non si verificherà alcun peggioramento delle prestazioni correlato al numero di regole del prezzo del carrello configurate durante le operazioni di pagamento.

  • Operazioni di salvataggio più rapide delle configurazioni a livello di archivio per le distribuzioni con molti archivi. Il salvataggio delle impostazioni di configurazione nelle distribuzioni con più di 500 archivi può richiedere molto tempo. Il nuovo modulo Configurazione asincrona abilita le operazioni di salvataggio della configurazione asincrona eseguendo un processo cron che utilizza un consumer per elaborare l'operazione di salvataggio in una coda di messaggi. AsyncConfig è disabilitato per impostazione predefinita.

  • Generazione più rapida della cache di configurazione per le configurazioni di grandi dimensioni. Il comando bin/magento cache:clean config esegue ora il preriscaldamento della cache di configurazione quando questa è abilitata. Questo riduce il tempo di inattività necessario per generare la cache di configurazione per le configurazioni di grandi dimensioni. Le operazioni di salvataggio della configurazione non puliscono più la cache di config_scopes prima di scrivere i dati nella cache, riducendo anche il tempo di blocco delle altre richieste durante la scrittura dei dati di configurazione.

Braintree

  • Vaulted PayPale Pay Later modifiche—I clienti che hanno effettuato l'accesso e che in precedenza hanno archiviato o archiviato il proprio conto PayPal possono pagare con:

    • Pay Now (senza dover accedere al proprio account PayPal, l'utente può pagare con la propria carta predefinita)
    • Pagamento con un'altra fonte di finanziamento
    • Paga con un altro account
    • Pulsante PayPal Pay Later o PayPal Credit
  • Supporto di 3DS perGoogle Pay. È incluso il supporto per la verifica 3DS per le schede non tokenizzate Google Pay. Per ulteriori informazioni, consulta la documentazione di Braintree.

  • Vault Apple Pay Payments - Consenti ai clienti connessi di archiviare i pagamenti Apple Pay nel proprio account Commerce Store per utilizzarli in transazioni future. Ciò riduce il numero di passaggi per il checkout e crea un'esperienza di checkout più veloce per il cliente che ritorna.

  • Vault Google Pay Payments - Consenti ai clienti connessi di archiviare i pagamenti Google Pay nel proprio account Commerce Store per utilizzarli in transazioni future. Questo riduce il numero di passaggi al momento del pagamento e crea un’esperienza di pagamento più rapida per il cliente che ritorna.

  • Vault Venmo Payments - Consenti ai clienti connessi di archiviare/archiviare i propri account Venmo nel proprio account Commerce Store per utilizzarli in transazioni future. Questo riduce il numero di passaggi al momento del pagamento e crea un’esperienza di pagamento più rapida per il cliente che ritorna.

  • Vault ACH Payments - Consenti ai clienti connessi di archiviare i pagamenti ACH nel proprio account Commerce Store per utilizzarli in transazioni future. Questo riduce il numero di passaggi al momento del pagamento e crea un’esperienza di pagamento più rapida per il cliente che ritorna.

  • Express Paymentpulsanti nella parte superiore dell'estrazione. Per favorire un'esperienza di estrazione più rapida, sono state introdotte Express Payment opzioni all'inizio dell'estrazione. I clienti possono ora pagare PayPal, PayPal Pay Later, Apple Pay e Google Pay Express pagamenti.

  • Note sulla versione di Braintreee collegamenti per il supporto all'interno di Admin Configuration—Gli esercenti possono ora collegarsi direttamente da Commerce Admin al supporto di Braintree e alle note sulla versione online.

  • Supporto di GraphQL per tutti i metodi di pagamento Braintree eccettoVenmo. Altre configurazioni sono esposte nell'API GraphQL. Questa funzione è particolarmente utile per le applicazioni headless.

  • Vaultingpagamenti nell'area dell'account. I clienti connessi possono ora archiviare/archiviare nuove carte di credito/debito e PayPal account nell'area dell'account cliente. In precedenza, i clienti potevano eseguire il vaulting/store solo quando salvavano i pagamenti per un uso successivo al completamento di una transazione al momento del pagamento, ora possono eseguire il vaulting di nuove carte di credito/debito e account PayPal senza dover creare una nuova transazione.

  • Transazioni senza attrito: le transazioni senza attrito accelerano il processo di pagamento riducendo il numero di clic/passaggi del cliente per completare una transazione online con carta di credito/debito. In precedenza (quando era abilitato 3DS), ogni cliente aveva problemi con 3DS. Con la nuova funzione Transazioni senza attrito, i clienti vengono sfidati per 3DS solo quando la banca lo richiede. Questo riduce l’abbandono del carrello, aumenta i tassi di conversione e porta a un aumento delle vendite.

  • Webhook controversia: quando un cliente contesta una transazione in Braintree, lo stato della controversia viene ora passato a Commerce. È ricercabile nella griglia Sales > Order e può essere allegato a ogni ordine.

GraphQL

Magento Open Source 2.4.7 include funzionalità avanzate di caching di GraphQL, supporto dello schema GraphQL per gli attributi personalizzati, supporto per l’annullamento di ordini headless e funzionalità migliorate di caching del risolutore.

  • Gestione più flessibile del carrello. La mutazione clearCart cancella ora il contenuto di un carrello specificato in una singola azione. Sostituisce la mutazione clearCustomerCart, che è stata dichiarata obsoleta.

  • Miglioramenti nella creazione di mutazioni del carrello. La mutazione createGuestCart è stata aggiunta per sostituire la mutazione createEmptyCart obsoleta. In precedenza, se si utilizzava createEmptyCart, non era possibile determinare se il carrello era per un cliente ospite o connesso.

  • Gli elementi dell'ordine ora includono le immagini del prodotto. OrderItemInterface espone le immagini del prodotto, consentendo l'associazione delle immagini ai prodotti ordinati e un caricamento più efficiente. GitHub-32369

  • Supporto esteso per il resolver caching. I seguenti risolutori di query GraphQL sono ora memorizzabili nella cache dei risultati del resolver GraphQL, il che migliora le prestazioni quando le query vengono inviate con richieste POST:

    • Magento\CustomerGraphQl\Model\Resolver\Customer::resolve
    • Magento\CustomerGraphQl\Model\Resolver\CustomerAddress::resolve
    • Magento\CustomerGraphQl\Model\Resolver\IsSubscribed::resolve
    • Magento\CatalogGraphQl\Model\Resolver\Product\MediaGallery::resolve
  • Supporto per l'annullamento dell'ordine. La mutazione cancelOrder consente a un cliente di annullare un ordine, trasmettendo il relativo identificatore e un motivo di annullamento.

  • Supporto avanzato per attributi personalizzati. Il supporto degli attributi personalizzati di GraphQL è stato migliorato arricchendo i dati API per supportare tutti i tipi di attributi. Lo schema degli attributi EAV di GraphQL ora supporta l’estensione degli attributi del cliente e degli oggetti dell’indirizzo del cliente nell’Admin e il loro recupero tramite GraphQL. Le aree specifiche di miglioramento includono:

    • estensione/aggiunta del supporto di attributi personalizzati ad aree specifiche come l’indirizzo del cliente
    • aggiunta della cache per gli attributi personalizzati
    • supporto migliorato degli attributi personalizzati esistenti per i prodotti
  • Le funzionalità avanzate di memorizzazione nella cache di GraphQL migliorano la velocità di caricamento delle pagine. È stata aggiunta la funzionalità di memorizzazione in cache a queste query, che migliora la velocità di caricamento delle pagine per la maggior parte delle pagine PWA:

  • Prestazioni migliorate del parser GraphQL. Le prestazioni del parser GraphQL sono state migliorate riducendo il numero di volte in cui il metodo di analisi viene chiamato per richiesta. Ora si chiama una volta. In precedenza, il parser veniva chiamato almeno tre volte.

Nuovi campi per le mutazioni esistenti

  • Il campo quickorder_active è stato aggiunto alle query storeConfig e availableStores. Questo campo indica se la funzione di ordine rapido è abilitata.

  • Sono stati aggiunti i seguenti campi alle setBillingAddressOnCart mutazioni and setShippingAddressesOnCart :

    • fax
    • middlename
    • prefix
    • suffix

Nuovo query e mutazioni

Query e mutazioni obsolete

Inventory management

Inventory management (v1.2.7) fornisce strumenti per gestire l’inventario dei prodotti. Questa funzione sviluppata dalla community è fornita in bundle con il codice di base Adobe Commerce e Magento Open Source.

Metapacchetto dell’estensione Magento Open Source

Questa versione include il metapackage di estensione Magento Open Source v1.0.0, che raggruppa automaticamente con questa versione di base alcune estensioni Magento Open Source. La versione di questa estensione inclusa in questo metapackage viene installata durante l'esecuzione di composer update, semplificando il processo di aggiornamento dell'estensione quando si esegue l'aggiornamento alla versione di base più recente. Questa estensione mantiene una pianificazione di rilascio indipendente.

Il metapacchetto dell’estensione Magento Open Source per Magento Open Source 2.4.7 include le seguenti estensioni:

Le versioni future di questo metapacchetto di estensione conterranno estensioni aggiuntive.

PWA Studio

PWA Studio v14.0 è compatibile con Magento Open Source 2.4.7-beta1. Include diversi miglioramenti per migliorare l’accessibilità. Per informazioni sulle correzioni di bug, vedi Versioni di PWA Studio. Per un elenco delle versioni di PWA Studio e delle relative versioni di base compatibili con Magento Open Source, vedere Compatibilità delle versioni.

Framework API web

Questa versione introduce due nuovi endpoint REST che forniscono una soluzione alternativa per una limitazione con gli endpoint REST API GET e POST V1/products/attributes. Questi endpoint restituiscono lo stesso valore per l'attributo is_filterable per entrambe le opzioni Filterable(with results) e Filterable(no results) dell'opzione Use in Layered Navigation. La proprietà dell'attributo is_filterable è di tipo Boolean, che non consente di impostare questa proprietà su Filterable(no results).

Due nuovi endpoint REST sono stati implementati come soluzione alternativa:

  • PUT /V1/products/attributes/{attributeCode}/is-filterable/{isFilterable}. Parametri del percorso: attributeCode (String) e isFilterable (int valori sono: 0 è No; 1 è Filterable (with results); 2 è Filterable (no results)).
  • GET /V1/products/attributes/{attributeCode}/is-filterable. Parametri percorso: attributeCode (String).

Problemi risolti

Sono stati risolti centinaia di problemi relativi al codice core di Magento Open Source 2.4.7. Di seguito è descritto un sottoinsieme dei problemi risolti inclusi in questa versione.

Installazione, aggiornamento, distribuzione

  • La modifica della cache non necessaria è stata rimossa dal processo di configurazione. In precedenza, Magento Open Source scriveva la propria configurazione su disco inutilmente durante l'esecuzione di bin/magento setup:db-data:upgrade o bin/magento setup:upgrade, causando problemi con alcuni moduli durante l'installazione. GitHub-38124
  • Sono stati risolti i problemi di distribuzione dovuti a memoria insufficiente e tabelle di grandi dimensioni. Il comando bin/magento setup:upgrade non ha più esito negativo a causa di errori di memoria superata correlati a tabelle MySQL di grandi dimensioni.
  • bin/magento setup:install viene completato correttamente dopo l'eliminazione di app/etc/config.php. In precedenza, il file mancante non veniva rigenerato durante l’installazione e Magento Open Source generava un errore. GitHub-37805
  • Refactoring di bin/magento setup:upgrade eseguito correttamente durante l'installazione di un nuovo modulo che installa sia le tabelle che gli indicizzatori mview associati. GitHub-37304
  • Il ripristino del database non ha più esito negativo a causa di un errore del delimitatore. In precedenza, Magento Open Source generava questo errore quando veniva eseguito bin/magento setup:rollback --db: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'delimiter' at line 1, query was: delimiter ;;.
  • Il comando bin/magento setup:upgrade non ha più esito negativo con questo tipo di errore relativo al limite di memoria MySQL: PHP Fatal error: Allowed memory size of 4294967296 bytes exhausted (tried to allocate 20480 bytes). La migrazione di attributi a selezione multipla è stata ottimizzata per consumare meno memoria durante setup:upgrade.
  • La generazione di un backup del database ora funziona come previsto sia dalla riga di comando Admin che da quella. In precedenza, Magento Open Source ha generato questo errore: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'delimiter' at line 1, query was: delimiter ;;.
  • L'esecuzione di setup:config:set senza specificare il parametro --lock-db-prefix non cancella più il valore corrente dal file env.php.
  • La configurazione della vernice è stata aggiornata per impedire agli utenti guest di accedere ai contenuti memorizzati nella cache relativi ad altri gruppi di clienti.
  • bin/magento setup:upgrade ora viene completato correttamente durante l'installazione di un nuovo modulo che installa sia le tabelle che gli indicizzatori mview associati.
  • bin/magento setup:upgrade visualizza ora un messaggio di errore più informativo quando un argomento della coda di messaggi non include un nome di argomento. GitHub-34246
  • bin/magento setup:upgrade visualizza ora un messaggio di errore più informativo quando i file XML uniti non sono validi. Il messaggio di errore ora include il nome del file.

Interfaccia utente amministratore

  • I grafici ora sono disabilitati correttamente per impostazione predefinita sul dashboard. GitHub-38430
  • Il menu Vendite amministratore ora visualizza correttamente i sottomenu. In precedenza, l’interruzione di colonna non funzionava correttamente e alcuni sottomenu non venivano visualizzati. GitHub-37812
  • Le opzioni del menu a discesa Select sono ora visibili in Admin Content > Pages quando nella griglia sono selezionate più pagine. GitHub-35386
  • È stato corretto il percorso al valore predefinito di system/dashboard/enable_charts nelle impostazioni di configurazione. Ora i grafici vengono visualizzati nell’amministratore come previsto. GitHub-37668
  • È stato corretto un problema di visualizzazione con le griglie dei clienti amministratori. In precedenza, le colonne della griglia non erano completamente contenute nella pagina visualizzata.
  • I colori al passaggio del mouse vengono ora applicati come previsto sulle righe delle griglie statiche di amministrazione. GitHub-35358
  • Il flusso di lavoro di pagamento non visualizza più un avviso quando un acquirente inserisce un codice postale per la Grecia che non contiene uno spazio vuoto. GitHub-36676
  • Il collegamento Amministratore It's time to change your password ora viene reindirizzato alla pagina Modifica password amministratore come previsto. GitHub-37902
  • I suffissi del titolo della pagina sono ora inclusi sia nel tag title che nel tag meta title per le pagine dei prodotti. GitHub-37680
  • La condizione di stato delle scorte di prodotto viene ora applicata correttamente per le regole dei prodotti correlati.
  • Il pulsante Login as Customer è ora visualizzato correttamente sui dispositivi mobili.
  • Adobe Commerce non visualizza più il pulsante Amministratore Add new customer group se l'utente amministratore connesso non è autorizzato ad aggiungere un nuovo gruppo di clienti.
  • Ora un utente amministratore con autorizzazioni limitate può salvare un prodotto secondario il cui prodotto principale è assegnato a un ambito diverso. In precedenza, Commerce invalidava la cache per un prodotto principale non assegnato all’ambito in cui il prodotto secondario veniva modificato.
  • Gli utenti Admin ora possono passare correttamente da una visualizzazione all’altra senza che i dati di visualizzazione vengano danneggiati o persi. GitHub-37529

Prodotti bundle

  • La query customerCart ora restituisce tutti gli sconti applicati sui prodotti bundle come previsto. In precedenza, gli sconti totali applicati a un prodotto bundle venivano restituiti come zero.
  • Le pagine dei dettagli del prodotto ora visualizzano il prezzo corretto per i prodotti bundle a cui è stato applicato uno sconto del 100%. In precedenza, Magento Open Source non applicava uno sconto del 100% ai prezzi dei prodotti bundle.
  • Le regole di prezzo del carrello ora vengono applicate ai bundle di prodotto invece che a ciascun prodotto secondario per i prodotti in bundle a prezzo dinamico.
  • È stato corretto un errore che si verificava quando si utilizzava l'endpoint POST V1/shipment per creare una spedizione contenente un prodotto bundle. L'endpoint ora aggiunge gli elementi come previsto e non restituisce più questo errore: The shipment couldn't be saved.
  • È ora possibile utilizzare il ciclo di lavorazione API GET V1/shipment/ per creare una spedizione con un prodotto bundle quando per il prodotto è impostato il tipo di spedizione together. Anche i prodotti bundle vengono ora convalidati in base alla proprietà del tipo di spedizione.
  • Gli acquirenti possono ora modificare la quantità di un prodotto nel carrello. In precedenza, Adobe Commerce non gestiva valori Null per ItemId quando i prodotti venivano modificati nel carrello acquisti vetrina e veniva visualizzato un errore. GitHub-37696
  • I prodotti bundle possono ora essere aggiunti correttamente a un ordine amministratore utilizzando SKU che contengono una barra (/). In precedenza, gli utenti amministratori non potevano utilizzare questo metodo per aggiungere prodotti a un ordine amministratore e Magento Open Source generava un errore JavaScript.
  • Gli utenti amministratori possono ora impostare valori predefiniti decimali per le nuove opzioni del bundle aggiunte quando Qty Uses Decimal è abilitato per il prodotto semplice corrispondente. In precedenza, i valori decimali potevano essere impostati solo per le selezioni salvate.
  • Prestazioni ottimizzate per il salvataggio di prodotti in bundle con un gran numero di opzioni
  • I prodotti bundle vengono ora importati correttamente senza duplicare gli SKU nelle opzioni di prodotto. In precedenza, Magento Open Source creati più SKU duplicati nelle opzioni di prodotto quando importavi prodotti in bundle con voci duplicate.
  • Il prezzo del prodotto del bundle ora viene calcolato correttamente quando uno dei prodotti nel bundle è esaurito. In precedenza, se un prodotto che faceva parte del pacchetto era esaurito, veniva rimosso dal calcolo del prezzo.
  • I prodotti in bundle vengono ora visualizzati come esauriti al momento dell’acquisto dell’ultimo dei prodotti secondari richiesti. In precedenza, i prodotti in bundle venivano visualizzati come in magazzino sul negozio quando i loro prodotti semplici erano esauriti.
  • Sono stati risolti i problemi di prestazioni relativi all'aggiunta di prodotti bundle con opzioni non obbligatorie al carrello utilizzando la mutazione addBundleProductsToCart.
  • La query categoryList ora restituisce tutte le opzioni del bundle come previsto quando l'impostazione di configurazione Show out-of-stock products è abilitata. In precedenza, le opzioni esaurite non venivano incluse nella risposta alla query.
  • I prodotti del bundle creati con POST V1/products ora hanno esito positivo quando l'ambito del prezzo del catalogo è impostato su website. In precedenza, si verificava una violazione del vincolo di integrità. GitHub-35595

Cache

  • Le categorie sono ora visibili agli acquirenti nei negozi in cui la cache è impostata su Fastly CDN (Caching Application=Fastly CDN). Ciò ha interessato sia gli acquirenti ospiti che i clienti registrati.
  • Dopo l’accesso, i cookie della cache sono ora gli stessi dopo la navigazione nel sito web. In precedenza, il controller di accesso inviava il cookie di cache errato e le pagine potevano essere state memorizzate nella cache più volte.
  • Le risposte dalle operazioni di GraphQL GET sulle pagine CMS che contengono blocchi di CMS ora vengono cancellate come previsto nella cache Fastly. I successivi aggiornamenti della pianificazione ora mostrano contenuti accurati e aggiornati per queste pagine.
  • La cache delle pagine viene ora cancellata come previsto per un prodotto principale quando uno dei suoi prodotti secondari è stato salvato dall’amministratore. È stato introdotto un controllo del plug-in per raggiungere l’invalidazione della cache per le varianti configurabili, simile ad altri tipi di prodotto, indipendentemente dallo stato dell’indicizzatore (pianificato o in tempo reale). In precedenza, i prezzi non venivano aggiornati correttamente sullo storefront dopo l’aggiornamento di una variante configurabile da parte dell’amministratore.
  • È stato aggiunto un meccanismo di caching per le credenziali di AWS. Un provider di credenziali ora utilizza la cache di Commerce per memorizzare nella cache le credenziali recuperate da AWS per la configurazione EC2.
  • Il plug-in il cui scopo è quello di aggiungere il tag della cache configurabile quando viene salvato un prodotto semplice associato a un prodotto configurabile ora funziona come previsto. Tutti i tag della cache configurabili rilevanti vengono rimossi come previsto quando un prodotto semplice viene aggiornato da POST V1/products. In precedenza, non tutti i prezzi venivano aggiornati nella vetrina e le cache dovevano essere cancellate manualmente. GitHub-36726