Note sulla versione di Magento Open Source 2.4.5

Il Magento Open Source introduce miglioramenti alla qualità della piattaforma, ai metodi di pagamento, alle prestazioni di memorizzazione nella cache di GraphQL e all'accessibilità. Include aggiornamenti ai moduli Google integrati.

Questa versione include oltre 290 correzioni e miglioramenti di qualità.

NOTE
Le versioni di Adobe Commerce possono contenere modifiche non compatibili con le versioni precedenti (BIC). Per esaminare le modifiche non compatibili con le versioni precedenti, vedere Riferimento BIC. I principali problemi di incompatibilità con le versioni precedenti sono descritti in Elementi di rilievo BIC. Non tutte le versioni introducono i principali BIC.

Altre informazioni sulla versione

Anche se il codice per queste funzioni è incluso con le versioni trimestrali del codice principale del Magento Open Source, molti di questi progetti sono anche rilasciati in modo indipendente. Le correzioni di bug per questi progetti sono documentate nelle informazioni sulla versione specifiche per il progetto, disponibili nella documentazione di ciascun progetto.

Punti salienti del Magento Open Source 2.4.5

In questa versione, cerca le seguenti aree di rilievo.

Miglioramenti di sicurezza

Questa versione include 20 correzioni di sicurezza e miglioramenti di sicurezza della piattaforma. Questa correzione rapida per la sicurezza è stata supportata nel Magento Open Source 2.4.4-p1 e nel Magento Open Source 2.3.7-p4.

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

Consulta Bollettino sulla sicurezza degli Adobi per le ultime discussioni su questi problemi risolti.

Ulteriori miglioramenti della sicurezza

Miglioramenti di sicurezza per questa versione migliorano la conformità con le best practice più recenti, tra cui:

  • Il supporto reCAPTCHA è stato aggiunto ai moduli Condivisione elenco desideri, Crea nuovo account cliente e Buono regalo.

  • Le risorse ACL sono state aggiunte al magazzino.

  • La sicurezza del modello di inventario è stata migliorata.

  • Il MaliciousCode il filtro è stato aggiornato per utilizzare HtmlPurifier libreria.

Miglioramenti alla piattaforma

Il Magento Open Source 2.4.5 ora supporta

  • Compositore 2.2

  • TinyMCE (5.10.2). Le versioni precedenti di TinyMCE (v5.9.2 o precedenti) consentivano l’esecuzione arbitraria di JavaScript quando veniva aggiornato un URL creato appositamente o un’immagine con un URL creato appositamente.

  • jQueryUI (1.13.1)

  • PHPStan (^1.5.7 con vincolo) GitHub-35315

Lo schema di integrazione DHL è stato aggiornato da v6.0 a v6.2. Questo aggiornamento non modificherà il comportamento del prodotto.

Le librerie JavaScript obsolete sono state aggiornate alle versioni più recenti e le dipendenze obsolete sono state rimosse. Queste modifiche sono compatibili con le versioni precedenti.

Aggiornamenti delle dipendenze del compositore

Le dipendenze del Compositore seguenti sono state aggiornate alle versioni più recenti con vincolo:

  • colinmollenhour/credis (1.13.0)
  • guzzlehttp/guzzle (^7.4.2)
  • laminas/laminas-captcha (aggiornato con un vincolo ^2.12)
  • laminas/laminas-db (^2.15.0)
  • laminas/laminas-di (^3.7.0)
  • laminas/laminas-escaper (~2.10.0)
  • laminas/laminas-eventmanager (^3.5.0)
  • laminas/laminas-feed (^2.17.0)
  • laminas/laminas-mail (^2.16.0)
  • laminas/laminas-mvc (^3.3.3)
  • laminas/laminas-server (^2.11.1)
  • laminas/laminas-servicemanager (^3.11.0)
  • laminas/laminas-validator (^2.17.0)
  • league/fly (2.4.3)
  • monolog/monolog (^2.5)
  • phpmd/phpmd (^2.12.0)
  • phpstan/phpstan (^1.5.7)
  • phpunit/phpunit (~9.5.20)
  • php-cs-fixer (^3.4.0)
  • webonyx/graphql-php (14.11.6)

Il laminas/laminas-session, laminas/laminas-text, e laminas/laminas-view le dipendenze sono state rimosse.

Altri aggiornamenti e sostituzioni

  • Lo schema di integrazione DHL è stato aggiornato da v6.0 a v6.2.

  • L'URL del gateway predefinito per la spedizione USPS è stato aggiornato per l'utilizzo https invece di http.

  • Il Froogaloop libreria è stata sostituita con Vimeo Player.js (2.16.4).

  • Il grunt-eslint La libreria (NPM) è stata aggiornata alla versione più recente.

  • Il jQuery Storage le librerie sono state sostituite con julien-maurel/js-storage.

  • Il php-cs-fixer e phpcs gli strumenti di analisi del codice statico sono ora compatibili con PHP 8.x.

  • glob.js dipendenza (aggiornata con vincolo a ~7.2.0)

  • serve-static.js dipendenza (aggiornata con vincolo ~1.14.2)

  • underscore.js dipendenza (NPM) (1.14.2)

  • moment-timezone-with-data.js 0.5.34)

  • La libreria jquery/jquery-cookie è stato sostituito con js-cookie/js-cookie.

  • Il jarallax.js e jaralax-video.js Le librerie sono state aggiornate per utilizzare la versione più recente dell’API REST di Vimeo.

Aggiornamenti all’accessibilità

L’obiettivo di questa versione è stato quello di creare un’esperienza di vetrina su Venia (PWA) più percepibile, utilizzabile, comprensibile e solida. Questi miglioramenti includono:

  • Le informazioni di riepilogo sui risultati della ricerca vengono ora annunciate agli utenti di utilità di lettura dello schermo
  • Gli assistenti vocali ora vengono informati al caricamento di una nuova visualizzazione di pagina
  • Sono stati migliorati il contrasto e l'accessibilità della tastiera

Google Analytics

Google ha aggiornato i meccanismi di tracciamento e integrazione di AdWords e Analytics nelle applicazioni web tramite l’integrazione con GTag. Questa integrazione della funzionalità Google nelle pagine del sito Web estende le opportunità di tracciamento e gestione dei contenuti tramite i servizi Google. Adobe Commerce dispone di un set di moduli incorporati tra cui Google AdWords, Analytics, Optimizer e TagManager che sfruttano la precedente API per l’integrazione con i servizi Google. In questa versione, questa integrazione è stata reimplementata utilizzando l’approccio GTag​. Consulta Migrare da analytics.js a gtag.js (Universal Analytics).

GraphQL

I miglioramenti delle prestazioni di GraphQL includono:

  • Sviluppatori e amministratori possono ricostruire più rapidamente lo schema unificato di GraphQL storefront durante la distribuzione o la modifica degli attributi in produzione. Gli acquirenti riscontrano inoltre velocità di caricamento delle pagine notevolmente più elevate quando è necessario ricreare lo schema GraphQL per qualsiasi motivo.

  • È stata aggiunta la possibilità di utilizzare la data/ora di scadenza del token di autorizzazione tramite l’utilizzo di token web JSON (JWT) nell’API di GraphQL.

  • Il bin/magento config:set graphql/session/disable 1 consente ai commercianti di disabilitare completamente la creazione di cookie di sessione per tutte le operazioni di GraphQL. Per impostazione predefinita, l’applicazione Open Source crea questi cookie e si basa su di essi per l’autorizzazione, il che influisce sulle prestazioni. In futuro, consigliamo di utilizzare i token come unica forma di autorizzazione per le richieste GraphQL. Si sconsiglia di utilizzare i cookie di sessione da soli o in combinazione con i token di autorizzazione. Consulta Autorizzazione GraphQL.

  • I cookie di sessione vengono ora avviati nelle operazioni di GraphQL utilizzando proxy di classe solo quando necessario.

  • Utilizzo sessione rimosso da http processori header in GraphQL, ad esempio store, customer o currency.

Consulta la Guida per gli sviluppatori di GraphQL per informazioni dettagliate su questi miglioramenti.

Inventario

La sicurezza del modello di inventario è stata migliorata.

Page Builder

Page Builder v.1.7.2 è compatibile con il Magento Open Source 2.4.5.

Il layout delle colonne di Page Builder include i seguenti miglioramenti:

  • Le colonne ora sono esposte, consentendo agli utenti di controllare le impostazioni delle colonne nella vetrina.

  • Il ridimensionamento delle colonne ora supporta il wrapping attivato dalle azioni dell’utente.

Pagamenti

Apple Pay è ora disponibile per tutti i commercianti che eseguono distribuzioni con i servizi di pagamento abilitati. Questo metodo di pagamento non richiede agli acquirenti di inserire i dati della carta di credito. Apple Pay è disponibile nella pagina dei dettagli del prodotto, nel mini-carrello, nel carrello e nel flusso di lavoro di pagamento. I commercianti possono attivare questa funzione.

PayPal

  • I commercianti in Spagna e Italia possono ora offrire PayPal Pay Later agli acquirenti.

  • Le anteprime dei pulsanti PayPal, Credito e Paga più tardi sono ora disponibili nell'amministratore per le pagine di pagamento, minicart, carrello e prodotti. Le anteprime mostrano l'aspetto di questi pulsanti quando vengono attivati e sottoposti a rendering nella vetrina.

Braintree

  • Braintree ha interrotto l'integrazione di KOUNT per la protezione dalle frodi. È stato rimosso dalla base di codice del Magento Open Source.

  • Il Richiedi sempre 3DS L'opzione è stata aggiunta all'amministratore.

PWA Studi

PWA Studi v.12.5.x è compatibile con Magento Open Source 2.4.5.

Le nuove funzioni di questa versione includono:

  • I dati sul comportamento degli acquirenti vengono raccolti sulla vetrina PWA Studi per i servizi di analisi web. Gli esercenti possono ora abbonarsi ed estendere questi eventi in base alle esigenze.

  • Gli esercenti possono ora selezionare un servizio da distribuire dall’amministratore (Google Tag Manager).

Per informazioni sui miglioramenti e sulle correzioni di bug, consulta Versioni di PWA Studi. Consulta Compatibilità delle versioni per un elenco delle versioni di PWA Studi e delle relative versioni compatibili di base del Magento Open Source.

Problemi risolti

Sono stati risolti centinaia di problemi nel codice core del Magento Open Source 2.4.5.

Installazione, aggiornamento, distribuzione

  • È ora possibile rinominare una patch di dati e aggiungere il vecchio nome di classe come alias nel patch_list tabella di database. Magento Open Source ora controlla se gli alias delle patch di dati esistevano già nel database prima di applicare la patch. In precedenza, applicationOpen Source generava un errore in queste condizioni.
  • Il Magento Open Source non genera più un'eccezione quando si tenta di modificare l'URL amministratore in un URL personalizzato dall'amministratore. In precedenza, dopo aver modificato l’URL di amministrazione, non era possibile effettuare l’accesso. GitHub-35416
  • I commercianti possono ora eseguire l’aggiornamento da una distribuzione di Magento Open Source 2.4.2 con Klarna al Magento Open Source 2.4.3. GitHub-33760
  • Il percorso di Magento Open Source Analytics non è più codificato. In precedenza, questo percorso hardcoded generava conflitti quando venivano installate più istanze di Magento Open Source su un server. GitHub-29373

Accessibilità

  • Il Shopping bag fornisce ora un’indicazione programmatica o testuale del suo stato. Gli utenti di utilità di lettura dello schermo vengono informati che facendo clic su questo pulsante si espanderanno altri contenuti o che il contenuto associato verrà espanso o compresso. In precedenza, questo pulsante non forniva un’indicazione programmatica o testuale del suo stato.
  • Informazioni sul pagamento elementi di testo o immagini di testo dell’opzione carta di credito soddisfano ora il rapporto di contrasto colore minimo richiesto WCAG 2.0 di 4,5:1 per il testo standard di 18 pt (24 px) o 14 pt (19 px), se in grassetto. In precedenza, non soddisfacevano il rapporto di contrasto previsto.
  • Rubrica > Comunicazione > Informazioni account gli indicatori di messa a fuoco personalizzati ora forniscono un rapporto di contrasto di almeno 3:1 rispetto al colore di sfondo.
  • Filtro e Ordina il testo del pulsante soddisfa ora il rapporto di contrasto minimo richiesto WCAG 2.0 di 4,5:1 per il testo standard di 18 pt (24 px) o 14 pt (19 px), se in grassetto. In precedenza, i pulsanti di navigazione per i caroselli non soddisfacevano questi requisiti di contrasto minimo.
  • Gli assistenti vocali annunciano la parola "Venia" una sola volta quando passano alle intestazioni e ai piè di pagina Venia. In precedenza, la stessa parola veniva annunciata due volte consecutivamente.
  • I pulsanti che attivano gli elenchi a discesa ora forniscono informazioni agli assistenti vocali che indicano il loro stato espanso o compresso e i nomi accessibili.
  • Gli utenti di utilità di lettura dello schermo vengono informati quando viene eseguito il rendering di una nuova visualizzazione di pagina. In precedenza, quando il titolo di una pagina veniva modificato, la modifica del titolo non veniva annunciata.

Adobe Stock

  • Gli utenti possono ora disconnettersi da Adobe Stock.

Prodotti bundle

  • Ora puoi utilizzare la PUT /V1/products endpoint per aggiornare gli attributi del prezzo del prodotto per un sito Web specifico. In precedenza, se alcuni attributi di prodotto venivano sostituiti per una visualizzazione specifica del negozio, non era possibile aggiornare un attributo di prezzo per quel prodotto nella stessa visualizzazione del negozio.
  • Il Magento Open Source ora calcola correttamente il totale del carrello per un prodotto bundle quando viene applicata la regola di selezione secondaria prodotto.

Cache

  • La cache dell’intera pagina non viene più visualizzata come disabilitata nell’amministratore quando la cache del Magento Open Source viene svuotata e use_stale_cache è abilitato.
  • I marcatori di distribuzione New Relic ora funzionano come previsto quando la cache viene svuotata. GitHub-32649

Carrello e pagamento

  • Il pop-up di ricerca degli indirizzi nella fase di fatturazione del flusso di lavoro di pagamento non causa più errori DOM.
  • Il addProductsToCart la mutazione ora funziona correttamente con più prodotti. In precedenza, questa query restituiva il primo prodotto con un subtotale accurato, ma restituiva un subtotale di 0 per gli altri prodotti.
  • Le eccezioni alle autorizzazioni vengono ora gestite per i prodotti con restrizioni aggiunti da SKU. Gli acquirenti ricevono ora un messaggio appropriato nella vetrina e il campo relativo alla quantità nella tabella degli errori è disabilitato. In precedenza, applicationOpen Source generava un'eccezione simile alla seguente: There has been an error processing your request.
  • La query SQL che aggiorna i preventivi interessati dopo la disattivazione di una regola di prezzo del carrello è stata ottimizzata per evitare di bloccare l'intera tabella dei preventivi.
  • Gli acquirenti con condivisione dell’account globale non devono più accedere nuovamente a un sito web secondario in una distribuzione multisito quando il pagamento come ospite è disabilitato. I dati dei clienti vengono ora caricati quando l’acquirente passa al sottodominio. Al cliente non viene più richiesto di effettuare di nuovo l’accesso e viene visualizzato il contenuto del carrello precedente.
  • I valori dell'elenco a discesa Indirizzo nel flusso di lavoro di pagamento non cambiano più per gli articoli rimanenti in un preventivo quando una singola voce di indirizzo di quantità viene rimossa in un'estrazione con più indirizzi. In precedenza, quando un prodotto veniva rimosso da un preventivo durante il checkout con più indirizzi, il valore dell’elenco a discesa dell’indirizzo veniva impostato su predefinito per tutti i prodotti.
  • Il cart la query non restituisce più risposte nulle quando un prodotto è esaurito. Una nuova errors alla risposta è stato introdotto un elemento contenente il messaggio di errore. In precedenza, quando si eseguiva una query con un prodotto esaurito, l’applicazione Open Source visualizzava null valore sotto items nella risposta. Consulta query carrello.
  • I metodi di spedizione sono ora disponibili come previsto quando un acquirente guest crea un account dopo aver aggiunto un prodotto al carrello prima di procedere al pagamento. In precedenza, quando un ospite aggiungeva un prodotto al carrello prima di creare un account, non erano disponibili metodi di spedizione durante il pagamento. Dopo l’aggiunta di altri prodotti al carrello, sono stati resi disponibili i metodi di spedizione.
  • Gli acquirenti possono ora aggiungere prodotti ai loro carrelli quando non vi sono opzioni nel Consenti paesi è stato selezionato.
  • Il contenuto del carrello e lo stato di accesso vengono ora ricaricati come previsto dopo il timeout di una sessione quando Abilita persistenza è impostato su . GitHub-35182
  • I subtotali del mini carrello ora vengono aggiornati correttamente quando un acquirente passa dalla pagina di spedizione alla pagina del carrello nel flusso di lavoro di pagamento per un ordine con più indirizzi di spedizione. In precedenza, il subtotale era raddoppiato.
  • Il mini carrello ora visualizza i prodotti aggiunti in precedenza dopo un timeout della sessione quando Abilita persistenza è abilitato. GitHub-35183
  • Gli esercenti possono ora creare una nota di credito in cui Spedizione con rimborso (incl. Imposta) è impostato su -0,01 e ora può impostare questa quantità su 0. In precedenza, non era possibile creare la nota di accredito in queste condizioni.

Regola prezzo carrello

  • Il Parent Only l'ambito dell'attributo viene ora utilizzato correttamente nella condizione Regola carrello.
  • I codici URL del prodotto ora rimangono invariati quando si aggiorna il nome del prodotto tramite PUT /V1/products/ per una visualizzazione store. In precedenza, veniva generato un nuovo codice URL basato sul nuovo nome di prodotto e assegnato al prodotto, che sovrascriveva il codice URL nella vista archivio.
  • L’aggiunta di un prodotto a una categoria dal widget di prodotto Page Builder impostato sulla modalità carosello non attiva più il ricaricamento della pagina.
  • Prodotti impostati su Non visibile singolarmente non viene più visualizzato nei risultati della ricerca avanzata del catalogo.
  • Gli attributi del bundle dinamico ora vengono aggiornati correttamente nella pagina Aggiornamento di massa attributi. Precedentemente, il SKU dinamica attributo rimasto impostato su anche se sono stati disattivati nella pagina Aggiornamento di massa.
  • Le regole del catalogo ora vengono applicate correttamente utilizzando indici incrementali anziché una reindicizzazione completa.
  • Ora è possibile passare correttamente dalla visualizzazione elenco alla visualizzazione griglia degli elenchi di prodotti composti da più pagine. In precedenza, quando si passava all’ultima pagina di una visualizzazione elenco di prodotti con più pagine prima di passare alla visualizzazione griglia, l’applicazione Open Source visualizzava questo errore: Unfortunately there are no products in this category on our website currently.
  • I rapporti del registro delle azioni dell’amministratore ora visualizzano gli ID prodotto aggiornati e le informazioni sullo stato aggiornate come previsto.
  • I trigger vengono ora ripristinati come previsto catalogrule_product_price dopo una reindicizzazione completa. In precedenza, i trigger venivano rimossi dal catalogrule_product_price tabella dopo catalogrule_rule o catalogrule_product reindicizzazione completa.
  • Le regole di categoria utilizzate per assegnare i prodotti alle categorie non vengono più modificate in modo casuale.
  • Le categorie non possono più essere aggiornate a livello globale da un amministratore con accesso limitato all'ambito. In precedenza, quando più siti web utilizzavano la stessa categoria ma prodotti diversi e un amministratore con autorizzazioni limitate a uno store aveva modificato i prodotti della categoria, la selezione dei prodotti veniva modificata anche per altri store.
  • Nella pagina dei dettagli del prodotto viene ora visualizzato il prezzo corretto quando si utilizza una valuta non predefinita per le impostazioni internazionali specificate. In precedenza, i numeri non venivano localizzati come previsto nella vetrina.
  • Ora quando si tenta di recuperare i prezzi di livello di un prodotto con record duplicati, l’API e la vetrina visualizzano lo stesso messaggio di errore. Precedentemente, PUT /V1/products/tier-prices ha restituito un messaggio di errore non corretto.
  • Il Magento Open Source ora fornisce messaggi di errore di convalida quando si tenta di aggiungere un codice URL di prodotto con un trattino finale. È disponibile anche un testo informativo.
  • Il nuovo ConfigurableWishlistItem.configured_variant ha sostituito il ConfigurableWishlistItem.child_sku campo. Quest’ultimo campo ha attivato un errore interno quando un elenco dei desideri del cliente conteneva un prodotto configurabile non configurato.
  • Le riscritture URL vengono ora generate solo per gli archivi selezionati durante l’aggiornamento di massa degli attributi per modificare la visibilità del prodotto. In precedenza, l’aggiornamento di massa degli attributi creava una riscrittura URL per l’archivio errato.
  • Quando Synchronize widget products with backend storage è attivata, l'applicazione Open Source aggiunge i dati di prodotto di recente visualizzazione in catalog_product_frontend_action tabella di database. Quando aggiungi dei record, include l’ID del cliente o del visitatore. Il recently_viewed_product La sezione della risposta ora è vuota se l’ID cliente e l’ID visitatore sono nulli. Di conseguenza, quando customer/section/load Quando viene inviata una richiesta Ajax, l’applicazione Open Source può filtrare correttamente i prodotti visualizzati di recente in base all’ID cliente o visitatore. In precedenza, la risposta includeva tutti i dati disponibili nel catalog_product_frontend_action tabella di database perché non è stata eseguita alcuna verifica per un ID cliente o visitatore vuoto.
  • Gli amministratori possono ora modificare le opzioni di prodotto configurabili nel carrello di un acquirente dal pannello a tendina Amministratore. In precedenza, il pannello diapositiva non funzionava correttamente.
  • La cache delle pagine viene ora cancellata come previsto per il prodotto principale configurabile quando vengono salvate le modifiche a un prodotto secondario. In precedenza, poiché la cache non veniva cancellata, le modifiche non venivano selezionate nella pagina di prodotto di configurazione storefront. GitHub-34508
  • Gli elenchi dei prodotti ora vengono visualizzati correttamente in Amministrazione. In precedenza, l’elenco dei prodotti non veniva riprodotto e Magento Open Source visualizzava questo errore: Item (Magento\Catalog\Model\Product\Interceptor) with the same ID "<ID>" already exists. GitHub-33145
  • I prezzi dei prodotti sono ora gli stessi nella pagina dei dettagli del prodotto e nella ricerca in vetrina in implementazioni multi-store dopo la modifica del prezzo di catalogo da sito web a globale. In precedenza, nella pagina Risultati ricerca catalogo veniva visualizzato il comando globale e la pagina dei dettagli del prodotto mostrava sito web prezzo. GitHub-34074
  • La navigazione su più livelli ora visualizza i prodotti con i prezzi più alti previsti quando Calcolo passaggio di navigazione prezzo è impostato su Manuale.
  • Ora puoi modificare il limite di prodotti per pagina visualizzato all’interno di una categoria quando Ricorda paginazione categorie è abilitato. In precedenza, il cookie form_key e interfaccia utente form_key è diverso e il Magento Open Source ha visualizzato questo errore: Invalid Form Key. Please refresh the page.
  • L'indicizzatore EAV ora elabora gli ID prodotto come tipo int per evitare possibili problemi di prestazioni.
  • La nuova cache dei prodotti viene ora generata correttamente dopo l’aggiunta di una nuova immagine con un nome contenente "". su un prodotto, quindi salva il prodotto e pulisci la cache delle immagini. GitHub-32699
  • Ora in Magento Open Source viene visualizzato un messaggio di errore come previsto quando si tenta di creare un attributo dalla pagina del prodotto senza completare il campo Amministratore. GitHub-33099

  • Le valutazioni dei prodotti ora sono corrette in tutti gli elenchi di prodotti del catalogo quando la pagina Home contiene più elenchi di catalogo. GitHub-33867

Prodotti configurabili

  • Dopo aver modificato la quantità nella pagina dei dettagli del prodotto, Magento Open Source ora visualizza il prezzo di prodotto corretto per un prodotto configurabile con un’opzione selezionata. In precedenza, il prezzo veniva reimpostato al valore iniziale dopo la modifica della quantità.
  • Il products query recupera ora i prezzi dei prodotti configurabili che riflettono con precisione Visualizza esaurito di configurazione. In precedenza, la query non restituiva prezzi precisi.
  • Le opzioni configurabili sono ora collegate ai prodotti configurabili creati nell’amministratore tramite POST /V1/configurable-products/configurable1/child.
  • Gli attributi a selezione multipla ora vengono salvati correttamente durante la modifica del prodotto. In precedenza, durante il salvataggio di un prodotto, applicationOpen Source salvava l'opzione predefinita per gli attributi non selezionati e per quelli selezionati.
  • Il Magento Open Source ora visualizza gli attributi configurabili come previsto durante la creazione del select tramite uno script di patch. In precedenza, gli attributi globali idonei erano nascosti.
  • Il addConfigurableProductsToCart è ora possibile utilizzare la mutazione per aggiungere prodotti configurabili con opzioni personalizzate. In precedenza, l’applicationOpen Source generava questo errore: Magento 2.3.4 graphql Notice: Undefined index: option_value in /var/www/html/mg234/vendor/magento/module-configurable-product-graph-ql/Model/Resolver/ConfigurableCartItemOptions.php on line 62. GitHub-28860

  • Ora puoi riordinare i prodotti configurabili con opzioni personalizzate facoltative. In precedenza, i tentativi di riordino non erano riusciti e comportavano la visualizzazione di questo errore: Some of the selected options are not currently available. GitHub-35409

  • Il addConfigurableProductsToCart la mutazione ora funziona come previsto con più prodotti. In precedenza venivano restituite informazioni di prodotto errate o veniva restituito un messaggio di errore non valido. GitHub-30948

Cliente

  • Magento Open Source visualizza correttamente gli attributi predefiniti del sistema EAV in base alle impostazioni del sito Web nella vetrina. In precedenza, gli attributi del cliente a livello di sito Web abilitati per un sito Web e disabilitati per un altro venivano visualizzati come abilitati per entrambi i siti Web.

Download disponibile

  • Ora puoi rimuovere collegamenti e file di esempio da un prodotto scaricabile. GitHub-31887

E-mail

  • Le e-mail inviate dal sistema ora vengono inviate correttamente ai destinatari con ".-" nel loro indirizzo e-mail.
  • Ora i clienti ricevono promemoria e-mail sui carrelli abbandonati secondo la pianificazione corretta. Il nuovo TIMESTAMPDIFF(DAY, ,) La funzione SQL ha sostituito TO_DAYS() e calcola la differenza nei timestamp in base a data e ora. In precedenza, i promemoria e-mail non venivano inviati per pianificazione a causa del calcolo errato di due valori data-ora di abbandono del carrello (qualsiasi fuso orario) e ora del server (UTC).
  • Il Magento Open Source visualizza ora un messaggio di errore nella pagina Spedizione quando un acquirente inserisce un formato e-mail non valido dopo aver fatto clic su di esso Inserisci ordine. In precedenza, il messaggio di errore veniva visualizzato nella pagina Pagamento. [GitHub-33590] (https://github.com/magento/magento2/issues/33590

Framework

  • Il bin/magento setup:config:set Il comando non sostituisce più i prefissi ID cache già impostati in app/etc/env.php.
  • Il bin/magento setup:static-content:deploy -s compact Il comando ora include gli stili dei temi figlio come previsto. In precedenza, i file CSS con tema non erano presenti nella vetrina dopo la distribuzione.
  • È stato aggiunto un nuovo sniff per verificare se le barre di chiusura sono utilizzate in void elementi.
  • Il Magento Open Source non genera più un errore SQL dopo l'assegnazione di una nuova origine a un prodotto e la modifica della quantità. GitHub-35262
  • L’ordinamento degli attributi ora funziona come specificato nella di.xml dopo l'aggiornamento.
  • Il updateCartCurrency La funzione ora imposta la stringa invece di un oggetto all’interno dell’oggetto carrello. In precedenza, applicationOpen Source non caricava un preventivo utilizzando getQuote perché updateCartCurrency funzione imposta un oggetto invece di una stringa all’interno dell’oggetto carrello. GitHub-34199
  • Gli avvisi di obsolescenza non vengono più visualizzati negli unit test a causa di\DateTimeFormatter::formatObject(). Questo metodo ora funziona come previsto con i valori numerici per $format.
  • Il Magento Open Source non visualizza più un preg_replace() Errore nell’amministratore. Il terzo argomento ($subject) è ora di tipo array|string invece di bool.
  • Il isFreeShipping Il metodo ora restituisce un numero intero anziché un valore booleano.GitHub-35164
  • Il Magento Open Source non genera più il seguente errore quando si crea un plug-in per qualsiasi metodo di classe vendor/magento/module-backend/Model/Menu.php: Error: Call to undefined method ReflectionUnionType::getName(). GitHub-35292
  • Il Magento Open Source ora restituisce un errore 404 invece di un errore 500 quando si passa a /checkout/sidebar/updateItemQty/?item_qty=error sul vetrina. In precedenza, veniva generato questo errore: Warning: A non-numeric value encountered in /vendor/magento/module-checkout/Controller/Sidebar/UpdateItemQty.php on line 69. GitHub-34380
  • Il Magento Open Source non attiva più un trim(): Passing null to parameter #1 ($string) of type string is deprecated errore quando la connessione AMPQ è configurata senza la configurazione SSL.
  • È stato corretto il longblog definizione del database in long blob. GitHub-35108
  • Il testo di foratura contenente virgolette singole è ora traducibile. GitHub-34319
  • A TypeError in magento2/app/code/Magento/Security/Model/AdminSessionsManager.php è stato corretto da int a string. GitHub-34415
  • .htpasswd è stato aggiunto a posizioni vietate in nginx file di configurazione. GitHub-35150
  • Il tempo di caricamento delle pagine dell’elenco di prodotti della categoria è stato migliorato con l’aggiunta di Magento_Ui/js/core/app as a deps a app/code/Magento/Ui/view/frontend/requirejs-config.js. GitHub-34847
  • Il ProductRepository.php:get il metodo ora restituisce le chiavi della cache una volta. In precedenza, venivano restituiti due volte. GitHub-34958
  • È stato aggiunto un messaggio di errore a una nuova eccezione creata nel gestore eccezioni per i processi cron. GitHub-34941
  • File Leggimi per GraphQl-GroupedProductGraphQl moduli sono stati aggiornati. GitHub-34951
  • Le pagine ordine di stampa/fattura/nota di credito della vetrina non visualizzano più il logo Luma predefinito anziché il logo specificato per la visualizzazione sul sito Web. GitHub-34942

Correzioni generali

  • Impostazione della dimensione massima della sessione su 0 (Admin Archivia > Impostazioni > Configurazione avanzata) non disconnette più l’amministratore. GitHub-35312
  • Le impostazioni di configurazione degli attributi dell’indirizzo del cliente ora vengono caricate correttamente in base al sito web a cui il cliente è assegnato quando si aggiunge un nuovo indirizzo del cliente dall’amministratore che viene assegnato a un sito web non predefinito.
  • Il Magento Open Source non genera più un'eccezione quando si aggiunge un prodotto bundle tramite Page Builder.
  • Ora puoi creare un account cliente su un dispositivo iOS con l’apostrofo inclinato (') nel nome, nel secondo nome o nel cognome. In precedenza, era consentito solo l’apostrofo diritto e l’utilizzo dell’apostrofo inclinato predefinito iOS 11+ ha prodotto un Name is not valid! errore.
  • Il products query ora restituisce informazioni sul prodotto che riflettono con precisione la configurazione "Mostra prodotti correlati". Il related_products, upsell_products, e crosssell_products I campi nell'interfaccia prodotto GraphQL ora vengono risolti in base rispettivamente alla configurazione Show Related Products (Mostra prodotti correlati), Show Upsell Products (Mostra prodotti di upselling) e Show Cross-Sell Products (Mostra prodotti di cross-selling).
  • Il Imposta prodotto come nuova data da ora visualizza la data corretta quando Imposta prodotto come nuovo L'attributo viene impostato tramite un aggiornamento di massa del prodotto. Precedentemente, Imposta prodotto come nuova data da è stato visualizzato come 1 gennaio 1970.
  • Agli utenti con ruoli limitati non viene più concesso automaticamente l’accesso a nuovi moduli.
  • Le condizioni delle regole di prodotto correlate ora funzionano come previsto con i prodotti che contengono multiselect attributi.
  • Gli esercenti possono ora aggiungere un attributo di prezzo livello (tier_price) a confronti di prodotti. In precedenza, la pagina di confronto dei prodotti si bloccava quando Confrontabile in vetrina l'impostazione per questo attributo è stata abilitata. GitHub-35244
  • Il Magento Open Source visualizza ora un messaggio di errore quando imposti un dominio cookie non valido (Archivia > Configurazioni > Web > Dominio cookie impostazioni cookie predefinito). In precedenza, il sito web si bloccava. GitHub-35048
  • Il Magento Open Source non genera più un errore quando un amministratore con ruoli con ambito in un singolo sito Web aggiunge un prodotto a Elementi di contenuto utilizzando PageBuilder. In precedenza, applicationOpen Source generava un errore SQL.
  • La convalida è stata aggiunta alla seconda riga dell'indirizzo nelle pagine di modifica e aggiunta degli indirizzi. Vengono ora applicate le lunghezze di testo minima e massima specificate per il secondo.
  • Il Magento Open Source non genera più il seguente errore durante la creazione di una regola di catalogo nell’Amministratore dopo l’aggiornamento: A technical problem with the server created an error. Try again to continue what you were doing. If the problem persists, try again later.
  • Il Magento Open Source non genera più un errore quando si attiva il Fai clic qui per collegare un feed RSS alla lista dei desideri prima di fare clic su Condividi elenco desideri. GitHub-34998
  • Il titolo del Mostra password È ora possibile tradurre la casella di controllo (Login cliente, Registrazione cliente, Modifica cliente (sezione Modifica password) e Moduli Impostazione nuova password cliente). GitHub-34857
  • Sono state aggiornate le etichette e le descrizioni dei commenti in app/code/Magento/NewRelicReporting/etc/adminhtml/system.xml. GitHub-31947
  • Rimosso non necessario csp_whitelist.xml file. GitHub-30607

GraphQL

  • Un elemento mancante price_range l'attributo è stato aggiunto al GraphQL BundleItemOption tipo. GitHub-35010
  • Il products query non restituisce più attributi come aggregazione quando Utilizzo nei risultati di ricerca L'impostazione di navigazione a livelli è disabilitata. GitHub-33318
  • A price_including_tax è stato aggiunto a CartItemPrices. GitHub-29057
  • Il new_from_data e new_to_datefields in ProductInterface non sono più obsoleti. GitHub-34783
  • Il categories query non genera più un'eccezione durante il recupero di un elenco di categorie di cui una contiene un'immagine che non è possibile trovare nel file system. In precedenza, applicationOpen Source generava questa eccezione: Category image not found. GitHub-34266
  • Il products query ora restituisce category_uid come aggregazione come previsto. GitHub-32557
  • Il updateCartItems La mutazione ora rimuove i prodotti come previsto quando lo stock di prodotti ha raggiunto la quantità massima di stock. GitHub-30220
  • Il urlResolver query ora risolve correttamente il delimitatore di percorso (/) quando più home page hanno lo stesso identificatore. In precedenza, la query non risolveva il delimitatore e restituiva null. GitHub-33615
  • customer le query recuperano ora le opzioni di selezione multipla del prodotto bundle come previsto durante la query degli ordini. GitHub-34717
  • Le sessioni di Magento Open Source non terminano più dopo aver effettuato una richiesta GraphQL. Precedentemente, il ClearCustomerSessionAfterRequest il plug-in ha disconnesso l'acquirente. GitHub-34550
  • Gamma di prezzi configurabile in products le risposte alle query ora vengono calcolate correttamente quando Visualizza prodotti esauriti l'impostazione di configurazione è attivata. In precedenza, le opzioni disabilitate venivano prese in considerazione nel calcolo del prezzo minimo e massimo.
  • Il products query ora restituisce correttamente più categorie filtrate quando si ordina per posizione.
  • setShippingAddressesOnCart Le richieste ora convalidano correttamente gli ID di regione. In precedenza, applicationOpen Source generava un errore quando si utilizzava l’ID di regione invece del codice di regione.
  • products le query ora restituiscono solo le categorie associate all’archivio passato nella richiesta.
  • Il categoryList query ora restituisce risultati che riflettono la categoria principale dell'archivio sottoposto a query quando l'archivio è specificato nell'intestazione. In precedenza, le categorie della categoria principale predefinita venivano incluse nei risultati anche se nell’intestazione era specificato un altro archivio.
  • Il products query non restituisce più attributi come aggregazione quando Utilizzo nella navigazione a livelli dei risultati di ricerca è disabilitata. GitHub-33318
  • Il cart query ora restituisce un solo metodo di pagamento per gli ordini gratuiti. In precedenza, tutti i metodi di pagamento attivi venivano restituiti nella risposta alla query. GitHub-34036
  • products le query non restituiscono più price_range valori per i prodotti configurabili che sono interessati da varianti disabilitate. GitHub-33629
  • È stato aggiunto un plug-in prima del collectQuoteTotals invoca per garantire che i crediti del negozio non vengano applicati più volte.
  • Il generateCustomerTokenAsAdmin la mutazione ora recupera i token del cliente come previsto. In precedenza, i token non venivano restituiti e veniva restituito questo errore: Customer email provided does not exist.
  • Lo schema GraphQL è ora valido quando un type l’attributo del prodotto è definito. In precedenza, lo schema non era valido perché type l'attributo sui tipi di prodotti è stato sovrascritto dal type attributo. GitHub-34929
  • Clienti aggiunti o aggiornati con createCustomer, createCustomerV2, updateCustomer, o updateCustomerV2 le mutazioni vengono ora aggiunte con gli abbonamenti a newsletter attive. In precedenza, i clienti venivano cancellati dalle newsletter anche quando la richiesta conteneva parametri di input corretti. GitHub-33599
  • Il products la query per una visualizzazione archivio specifica ora restituisce solo le categorie che si trovano nella categoria principale del sito web specifico nella distribuzione multisito. In precedenza, la query restituiva categorie dalle categorie principali di altri siti web. GitHub-34570
  • Il products query ora restituisce solo la sottocategoria dell’ID categoria fornito. In precedenza, restituiva tutte le categorie. GitHub-35220
  • Il customerOrders la query ora risponde come previsto quando gift_message L'oggetto è specificato nella risposta ma non esiste alcun messaggio regalo. In precedenza, la query restituiva questo messaggio: Can't load gift message for order is returned. GitHub-28957
  • È stato corretto un bug con catalog_category_product indicizzatore che ha causato la products per restituire categorie da un altro archivio. GitHub-31253
  • Il generateCustomerToken la mutazione crea ora una voce nel customer_log come previsto dopo la generazione di un token cliente. GitHub-33378

Google Analytics

  • Il modulo Google Tag è stato aggiunto alla base di codice, che supporta la transizione a Google Analytics 4 a luglio 2023. Al momento puoi utilizzare e raccogliere nuovi dati nelle proprietà di Google Universal Analytics, ma Google Universal cesserà il ciclo di vita a luglio 2023. GitHub-35204, GitHub-35376

Immagine

  • Le immagini nelle pagine dei dettagli del prodotto non sfarfalliranno più e rimarranno centrate come previsto. Precedentemente, dopo che una pagina dei dettagli del prodotto aveva completato il caricamento di un’immagine, questa si spostava visibilmente verso il basso.

Importa/esporta

  • La posizione di prodotto correlato, in upselling e cross-selling nel file CSV di esportazione è ora corretta dopo l’eliminazione di un prodotto cross-selling dall’amministratore prima di rigenerare il file CSV. In precedenza, le posizioni relative ai prodotti di cross-selling non venivano ricalcolate dopo la rimozione di un prodotto di cross-selling e l’ordine delle posizioni relative ai prodotti era errato.
  • Il Magento Open Source ora controlla la presenza di una vista personalizzata prima di filtrare le colonne durante l’esportazione dei rapporti. In precedenza, i rapporti esportati non tenevano conto delle viste personalizzate e le colonne esportate non erano corrette.
  • Il Magento Open Source ora importa correttamente le immagini con nomi di file lunghi. In precedenza, applicationOpen Source non importava l’immagine e generava questo errore: Imported resource (image) could not be downloaded from external resource due to timeout or access permissions in row(s):.
  • Gli attributi ID categoria sono ora disponibili nei filtri di esportazione pianificati.
  • Prodotti bundle che contengono un punto interrogativo (?) nel titolo dell’opzione ora può essere importato correttamente a causa di miglioramenti al generatore di query all’interno di populateExistingOptions metodo. Anche il titolo dell’opzione viene visualizzato correttamente. In precedenza, dopo l’importazione iniziale, le importazioni successive determinavano un comportamento danneggiato e raddoppiavano le opzioni. Gli acquirenti non potevano aggiungere il prodotto al carrello.
  • È stata aggiunta la convalida per i nomi di categoria durante l’importazione. In precedenza, applicationOpen Source non convalidava i nomi di categoria, causando errori quando i nomi di categoria superavano i 255 caratteri.
  • Record esistenti in catalog_url_rewrite_product_category vengono ora eliminate prima di inserirne di nuove. In precedenza, durante l’importazione di prodotti in più store, si verificava il seguente errore: SQLSTATE[23000]: Integrity constraint violation. GitHub-34210

Infrastruttura

  • Un plug-in del menu di scelta rapida obsoleto è stato rimosso dall’elenco dei plug-in.
  • La logica relativa alla barra degli strumenti dell’editor TinyMCE nel modulo Page Builder è stata aggiornata in seguito all’introduzione di delayedRender per la barra degli strumenti in TinyMCE.
  • Le corse non interrompono più la creazione del contentUpdated listener di eventi. GitHub-32068
  • Il getTypeID La funzione ora restituisce l’ID del tipo di prodotto, non l’ID prodotto. GitHub-35458
  • cursore dell’interfaccia utente jQuery e SelectMenu la mappatura è stata corretta in vendor/magento/module-theme/view/base/requirejs-config.js.

  • Osservatori assegnati a sales_order_state_change_before ora supporta il recupero di dati dall’oggetto dell’ordine. Il sales_order_state_change_before event è stato aggiornato. GitHub-26789

  • indexer:reset è stato reimpostato per chiamare $indexer->invalidate(). GitHub-34988
  • È ora possibile utilizzare il simbolo dei due punti in un htmlClass valore dell’attributo, che supporta l’utilizzo di componenti aggiuntivi come l’interfaccia utente di Tailwind. GitHub-34430

Registrazione

  • Le azioni cliente, indirizzo cliente e ordine ora vengono registrate correttamente nel rapporto Azioni amministratore. In precedenza, applicationOpen Source non registrava le azioni se postDispatch handler non specificato nelle impostazioni di configurazione.

MFTF

Gruppi di azioni

Le azioni ripetitive sono state sostituite da gruppi di azioni in questi test:

AdminConfigurableProductChildrenOutOfStockTest GitHub-32378
AdminCreateStoreViewTest GitHub-34631

Nuovi test

AdminUnlockAdminUserEntityTest GitHub-34836

StorefrontNewsletterSubscriptionWithEnabledNeedToConfirmConfigTest GitHub-33344

Test refactoring

AdminCancelTheCreatedOrderWithCashOnDeliveryPaymentMethodTest GitHub-33692

Newsletter

  • I clienti connessi non sono più contrassegnati come ospiti in Amministratore > Marketing > Iscritti alla newsletter.
  • L’e-mail di conferma dell’abbonamento alla newsletter ora presenta l’indirizzo e-mail corretto specifico per lo store in Da se il cliente è assegnato a un negozio non predefinito e ha effettuato o annullato l’abbonamento all’amministratore. In precedenza, il cliente riceveva un’e-mail con l’e-mail predefinita in Da intestazione. GitHub-34963
  • L’URL per l’annullamento dell’iscrizione nel modello e-mail della newsletter ora funziona come previsto. GitHub-33310

Ordine

  • I dettagli del cliente ospite ora vengono salvati correttamente dopo la modifica di un ordine. In precedenza, alcuni dettagli dei clienti andavano persi, tra cui customer_firstname e customer_lastname, x_forwarded_for.
  • Gli esercenti non possono più creare una nota di accredito con una quantità totale decimale quando Qtà decimale è disabilitato a livello di prodotto o di impostazione globale. In precedenza, i commercianti potevano creare una nota di accredito per la quantità totale decimale laddove non era applicabile.
  • Il comando Filtra per data ora funziona correttamente per le fatture, le spedizioni, le note di credito, le pagine CMS e le griglie di blocchi CMS quando il fuso orario impostato nelle preferenze è diverso da quello impostato in un computer locale. In precedenza, la data veniva analizzata in modo errato e i risultati filtrati includevano dati al di fuori dell’intervallo di date impostato.
  • Il Magento Open Source non modifica più gli indirizzi e-mail personalizzati assegnati agli ordini quando modifichi l’indirizzo e-mail principale assegnato al cliente nella pagina di modifica dell’account amministratore. In precedenza, quando si modificava l’indirizzo e-mail principale di un cliente, il nuovo indirizzo e-mail veniva assegnato a ogni ordine creato per quel cliente. GitHub-34397
  • Magento Open Source visualizza ora i record dell'archivio richiesto nella pagina della griglia delle note di credito nelle distribuzioni che eseguono PHP 7.4. In precedenza, applicationOpen Source generava il seguente errore dopo aver creato una nota di credito e aver tentato di visualizzarla: The store that was requested wasn't found. Verify the store and try again.
  • Nel Magento Open Source vengono ora visualizzate le note di accredito nella pagina della griglia della nota di accredito per gli ordini creati da viste del negozio il cui nome è preceduto da numeri. In precedenza, applicationOpen Source visualizzava l’errore: The store that was requested wasn't found. Verify the store and try again. Exception in /var/www/html/vendor/magento/module-store/Model/StoreRepository.php:75. GitHub-35122
  • Il Magento Open Source visualizza ora le spese di spedizione gratuite (0) sui totali della pagina delle fatture di amministrazione e vetrina. In precedenza, quando la spedizione era pari a zero per un ordine, l'applicazione Open Source non visualizzava l'importo totale della spedizione nella pagina fattura spedizione totale.
  • Il increment_id colonna nella sales_order la tabella è stata aumentata. Precedentemente, moduli di terze parti che presupponevano che sales_order.increment_id ha una lunghezza di 50 caratteri salvati solo i primi 32 caratteri di un increment_id. GitHub-34521

Metodi di pagamento

  • Ora gli amministratori possono effettuare un ordine all'amministratore utilizzando il metodo di pagamento PayPal PayflowPro. In precedenza, applicationOpen Source visualizzava questo errore: No such entity with cartId = 0.
  • Nella pagina Revisione pagamento del flusso di lavoro di pagamento ora viene visualizzato il nome corretto del metodo di pagamento quando il pagamento viene effettuato con Venmo, PayPal Later o PayPal.
  • Il cart query non restituisce più tutti i metodi di pagamento attivi per gli ordini gratuiti. GitHub-34036

Braintree

  • Gli esercenti possono ora inviare un rimborso parziale per gli ordini pagati con Apple Pay tramite Braintree. Questo era un problema noto nel Magento Open Source 2.4.4.

PayPal

  • Il Magento Open Source ora mostra il nome corretto del cliente in un ordine degli ospiti pagato con PayPal. In precedenza, il nome del cliente veniva visualizzato come Ospite.
  • Il risolutore per la mutazione createPaypalExpressToken è stato aggiornato per utilizzare correttamente il valore specificato nel campo di input use_paypal_credit. In precedenza, tentava di utilizzare un valore non valido paypal_credit campo. GitHub-35180

Prestazioni

  • La gestione della cache Redis è stata migliorata con l’aggiunta del TTL (data di scadenza) per le cache dei dati di prodotto associate ai prodotti configurabili. In precedenza, queste cache non venivano eliminate a causa di valori TTL mancanti se il criterio di eliminazione della chiave Redis era configurato per un criterio di eliminazione volatile.
  • Il nuovo Grid Filter Condition Type L'attributo dell'indirizzo del cliente controlla il modo in cui un filtro di attributi viene confrontato con i valori degli attributi nel database. Le opzioni includono Partial Match, Prefix Match, e Full Match.
  • L’indicizzatore full-text di ricerca nel catalogo è stato riposizionato all’esterno del ciclo store, il che semplifica la reindicizzazione. GitHub-33984
  • È stato risolto un problema relativo a array_merge in loop. GitHub-33929

Prezzi

  • Gli attributi di prezzo privi di valore nell'ambito predefinito (ma definiti a livello di visualizzazione dello store) ora vengono indicizzati correttamente. In precedenza, le espressioni SQL che recuperavano i valori degli attributi di prezzo dalla tabella EAV non tenevano conto dello scenario in cui il valore non era definito nell'ambito predefinito.
  • Il prezzo elencato nella pagina dei dettagli del prodotto è ora lo stesso del prezzo elencato nel flusso di lavoro di pagamento per i prezzi dei livelli che differiscono per la quantità selezionata (ad esempio, un prodotto con prezzi diversi in base all'acquisto di 2 articoli rispetto a 5 articoli). In precedenza, il prezzo di pagamento rifletteva il prezzo per la quantità di prodotto più bassa.

ReCAPTCHA

  • Il Invia Il pulsante Accedi e crea account non è più attivo finché ReCaptcha non è completamente caricato.

Ruoli

  • Il Archivia > Configurazione > Servizi Questa pagina visualizza ora le informazioni API Web del Magento Open Source come previsto quando Accesso alle risorse è impostato su Personalizzato nella scheda Role Resources (Risorse ruolo). GitHub-35506

Ricerca search-heading

  • Il filtro dei prodotti per campione di colore nella navigazione a livelli mostra l’immagine corretta per i prodotti dopo la correzione.
  • Le query di Elasticsearch ora funzionano come previsto quando int è configurato come back-end ricercabile type attributo. In precedenza, l’applicazione Open Source generava un Elasticsearch\Common\Exceptions\BadRequest400Exception eccezione.
  • È ora possibile utilizzare i sinonimi di ricerca insieme al Condizioni minime da rispettare Parametro Nelle query di Elasticsearch. In precedenza, se questo parametro era specificato nelle impostazioni e i termini di ricerca venivano aggiunti per parole chiave specifiche, la ricerca non restituiva alcun risultato.
  • Il Magento Open Source visualizza ora un conteggio accurato dei suggerimenti di ricerca nella vetrina, nelle distribuzioni in cui i suggerimenti di ricerca e Mostra conteggio risultati per ogni suggerimento sono attivate. In precedenza, il conteggio visualizzato accanto alle parole chiave era zero.
  • I prodotti ordinati in base agli attributi personalizzati nella pagina Catalogo vengono ora visualizzati nell’ordine previsto. In precedenza, i prodotti venivano ordinati in base all’ID del valore di opzione dell’attributo, che riflette l’ordine in cui sono stati aggiunti all’attributo. GitHub-33810
  • Il filtraggio dei prodotti per campione di colore nella navigazione a livelli ora mostra le immagini del prodotto corrette. In precedenza, la navigazione a livelli PageCache La chiave non includeva i parametri di filtro per i prodotti configurabili.
  • Sono stati corretti gli errori PHP in catalogsearch/advanced/result e catalogsearch/advanced/index pagine. In precedenza, il Magento Open Source visualizzava questo errore quando veniva passato un array in una stringa di ricerca avanzata: Warning: trim() expects parameter 1 to be string, array given | magento/module-catalog-search. GitHub-33586

Spedizione

  • Il Magento Open Source non genera più un errore durante il caricamento delle tariffe di spedizione UPS se non vengono selezionati metodi di spedizione consentiti. In precedenza, quando un acquirente inseriva un indirizzo di spedizione nel flusso di lavoro di pagamento in queste condizioni, non venivano visualizzati altri metodi di spedizione e il Magento Open Source visualizzava un errore nella vetrina. GitHub-34411
  • I prezzi dei prodotti virtuali sono ora esclusi nella tabella di calcolo dell’importo della spedizione. In precedenza, le spese di spedizione per questi prodotti non venivano calcolate correttamente.GitHub-35185
  • Le tariffe di spedizione della tariffa tabella a prezzo zero ora vengono visualizzate correttamente nel blocco Sintetico ordini del flusso di lavoro di pagamento per gli ordini a cui è stato applicato un buono sconto. In precedenza, il metodo di spedizione non veniva visualizzato.

Imposta

  • L’imposta fissa sui prodotti (FPT, Fixed Product Tax) ora viene visualizzata correttamente per i prodotti nel carrello. Precedentemente, se più prodotti nel carrello hanno Imposta sul prodotto fisso (FPT) e Applica imposta a FPT sono stati abilitati, tutti gli FPT sono stati assegnati all’ultimo prodotto nel carrello e reimpostati per altri prodotti.
  • Il totale FPT (Fixed Product Tax) per la sezione di riepilogo degli ordini del flusso di lavoro di pagamento ora viene calcolato correttamente.
  • Magento Open Source ora aggiorna il prezzo del livello di imposta di esclusione per un prodotto semplice nella pagina del prodotto come previsto dopo la modifica della quantità del prodotto semplice.
  • È stata aggiunta la convalida alla pagina di configurazione dello store per verificare se il paese selezionato dall’elenco a discesa è nell’elenco dei paesi dell’UE. Il Convalida partita IVA Questo pulsante è ora visibile solo per i paesi dell'UE. In precedenza, il pulsante era visibile per tutti i paesi, incluso il Regno Unito.
  • Il prezzo di livello ora viene calcolato correttamente quando Visualizza Prezzi Prodotto Nel Catalogo è impostato su Imposta esclusa o Inclusione ed esclusione di imposte. In precedenza, nella pagina dei dettagli del prodotto venivano visualizzati i prezzi dei livelli con le imposte nonostante l’impostazione.
  • Le tasse ora vengono applicate correttamente per gli ordini a qualsiasi indirizzo valido in vetrine utilizzando le impostazioni locali portoghesi. GitHub-34271
  • Il cart la query non include più l'imposta quando viene restituita subtotal_with_discount_excluding_tax. GitHub-33905
  • Richieste API web per dati ordine (GET /V1/orders/) non restituisce più valori negativi per i totali di riga.

Test

  • Sono stati corretti gli errori con Magento.GraphQl.CatalogGraphQl.ProductSearchTest.testSearchSuggestions quando viene eseguito con la configurazione di Elasticsearch di AWS.
  • Il testCreateProductOnStoreLevel integration test non causa più una transazione nidificata sul database.

  • La seguente eccezione non si verifica più quando si eseguono test WebAPI per la funzione Send Friend quando l’immagine del prodotto non è impostata su PHP 8.1: exception main.ERROR: /var/www/html/lib/internal/Magento/Framework/DataObject.php:131 strpos(): Passing null to parameter #1 ($haystack) of type string is deprecated. GitHub-34864

Traduzioni e lingue

  • Ora puoi utilizzare lo strumento Traduci in linea per modificare lo stesso elemento più di una volta. In precedenza, era inclusa solo la prima modifica apportata utilizzando questo strumento.
  • Il selettore della vista archivio non blocca più il riquadro di traduzione quando si modificano il testo o le etichette di amministrazione. È ora possibile modificare queste funzioni dal riquadro di traduzione e le modifiche vengono visualizzate quando si fa clic su Invia.
  • Il formato data/ora Admin per le lingue portoghese brasiliano e francese è ora valido.
  • È stato aggiunto un accento grave [`] in modo che sia possibile creare un account cliente per nomi o cognomi che includono questo accento.
  • Il testo sul Aggiungi al carrello Nella pagina Dettagli prodotto, il pulsante rimane ora tradotto nella lingua specificata nelle impostazioni internazionali associate. I file di traduzione vengono ora convertiti nei file JavaScript corrispondenti in base alle aree, ai temi e alle impostazioni internazionali quando translate_strategy=embedded. In precedenza, il testo tornava in inglese dopo l’aggiunta del prodotto al carrello.
  • I sinonimi di ricerca ora rispettano l’ambito dell’archivio assegnato. In precedenza, era possibile cercare in qualsiasi altro negozio un sinonimo assegnato a uno specifico negozio.
  • Sono stati risolti i problemi con le Filippine. GitHub-33996

UI

  • Nomi di prodotti lunghi in Catalogo > Prodotti La griglia è ora racchiusa tra parole invece di essere visualizzata in una singola riga.
  • L’intervallo di date di nascita minimo e massimo viene ora salvato come marca temporale corretta e quindi convertito da una marca temporale valida a un formato data valido.
  • La non disponibilità di magento.com non causa più problemi di prestazioni durante l’accesso dell’amministratore. È stato aggiunto un timeout nella richiesta di recupero della notifica di rilascio.
  • I risultati dei filtri dell’ordine amministratore, del cliente e della griglia di prodotto ora persistono come previsto quando vengono visualizzati nel browser Chrome.
  • Ora puoi creare un cliente dall’Amministratore quando Magento_LoginAsCustomerAdminUi è abilitato e Visualizzazione Negozio A Cui Accedere è impostato su selezione manuale. In precedenza, l’applicationOpen Source generava questo errore: (Magento\Framework\Exception\LocalizedException): Unable to get Customer ID. GitHub-33096
  • La freccia "Avanti" ora viene disabilitata come previsto quando un acquirente raggiunge l’ultima miniatura nella galleria di immagini del prodotto.
  • Il Ricerca per parola chiave il campo di input ora include un aria-label anziché un segnaposto sul Catalogo > Prodotto pagina.
  • Il collegamento all’Informativa sulla privacy nel piè di pagina Amministratore ora si collega al nuovo Adobe Informativa sulla privacy.
  • Ora gli amministratori possono accedere alle opzioni del menu Amministratore quando il bundling JavaScript è abilitato in modalità di produzione. GitHub-35325
  • Ora gli amministratori possono impostare una data di scadenza dell’utente corrente superiore al 2038 e salvarlo correttamente. In precedenza, l’utente la cui data di scadenza era stata modificata non poteva effettuare nuovamente l’accesso dopo la disconnessione.
  • Il Magento Open Source visualizza ora un messaggio di errore informativo quando un amministratore tenta di salvare un indirizzo con linee stradali eccessive in Admin Archivia > Attributi > Indirizzo del cliente. L’amministratore può ora eliminare le informazioni aggiuntive sull’indirizzo e salvarlo correttamente. In precedenza, applicationOpen Source eseguiva il commit delle righe aggiuntive ma non salvava i dati.
  • La configurazione della vista dell’elenco dei prodotti nel database e nell’archiviazione locale è stata aggiornata. Le visualizzazioni griglia personalizzate vengono ora salvate durante il ricaricamento della pagina e la visualizzazione delle modifiche.
  • Ora puoi passare da una visualizzazione all’altra quando sono abilitate le restrizioni del sito web. In precedenza, i problemi con il commutatore della visualizzazione archivio impedivano il passaggio tra le visualizzazioni dello store.
  • Il modulo di caricamento delle icone preferite ora supporta .ico tipi di file. In precedenza, quando si tentava di caricare un file favicon con questo tipo di estensione nell’Admin, l’applicazione Open Source visualizzava questo errore: Warning: imagecreatefromstring(): one parameter to a memory allocation multiplication is negative or zero, failing operation gracefully in /var/www/html/vendor/magento/module-media-storage/Model/File/Validator/Image.php on line 64. GitHub-34858
  • Sono stati risolti dei problemi di visualizzazione con il menu a discesa Seleziona nella griglia di amministrazione. GitHub-35386

Riscritture URL

  • Gli URL di un prodotto solo in una visualizzazione store specifica vengono ora rimossi dal url_rewrite tabella e amministratore dopo che lo stato di visibilità del codice attributo per la visualizzazione store specifica è stato modificato in Non visibile singolarmente. In precedenza, tutti gli URL venivano rimossi per il prodotto nel url_rewrite tabella. GitHub-34937

Video

  • Ora puoi utilizzare i parametri URL di YouTube utilizzando Page Builder per aggiungere un nuovo video. In precedenza, questi parametri venivano rimossi automaticamente dall’URL.
  • È ora possibile impostare un video Vimeo da eseguire in background in un banner quando CSP è impostato su restrict mode. In precedenza, applicationOpen Source generava un errore JavaScript.

Framework API web

  • Mutex è stato implementato per gli ordini di evitare race condition durante l'aggiornamento da richieste simultanee. In precedenza, le condizioni di concorrenza durante le chiamate API REST simultanee causavano la sovrascrittura delle informazioni sullo stato di spedizione nella tabella Articoli ordinati dell’amministratore.
  • L’ereditarietà del ruolo dell’immagine del prodotto ora viene mantenuta a meno che non sia esplicitamente definita nel payload durante l’aggiornamento di un prodotto in una visualizzazione store specifica tramite l’API REST.
  • Schema Swagger (/rest/schema) ora utilizza ID operativi univoci.
  • Regole di prezzo del carrello create tramite POST /V1/salesRules/ l’endpoint ora mantiene i valori del codice coupon esistenti dopo aver cambiato lo stato da disabilitato a abilitato. GitHub-35298
  • Regole di prezzo del carrello create tramite POST /V1/salesRules/ l'endpoint ora contiene un valore valido from_date e to_date valori. GitHub-35265
  • CartItemInterface ora include customizable_options. GitHub-31180
  • Le richieste PUT e DELETE in blocco API REST ora funzionano come previsto quando Magento_ReCaptchaWebapiRest è attivato. GitHub-35348
  • L’API Rest in blocco ora funziona con bySku per i prodotti configurabili. In precedenza, restituiva un errore 500.
  • Creazione di un nuovo programma di prezzi speciali con POST /V1/products/special-price l’endpoint funziona ora come previsto. In precedenza, l’endpoint restituiva questo errore: Future Update already exists in this time range. Set a different range and try again.
  • Il /V1/products/base-prices l’endpoint funziona ora come previsto con Modalità prezzo catalogo - Sito Web. GitHub-30132

Lista dei desideri

  • L'aggiornamento di una quantità articolo dalla pagina della lista dei desideri ora aggiorna la quantità nella pagina dei dettagli del prodotto come previsto. L’applicazione Open Source ora raccoglie il valore aggiornato dall’URL del prodotto e compila il qty campo della pagina dei dettagli del prodotto dalla lista dei desideri.

Problema noto

Problema: gli utenti Admin non possono creare un ordine o riordinare per i clienti dall’Admin quando la Braintree è abilitata. Quando l’utente amministratore fa clic su Ordine o Riordina, Adobe Commerce non invia l'ordine e system.log visualizza questo errore: report.CRITICAL: Error: Call to a member function getMethodInstance() on null in /app/vendor/paypal/module-braintree-core/Block/Form.php:174. Soluzione alternativa: BUNDLE-3137-composer.patch è ora disponibile. Consulta la L'amministratore non può creare un ordine o riordinarlo quando è abilitato il pagamento Braintree Articolo della Knowledge Base per una discussione su questo problema e per accedere alla patch. Una correzione verrà inclusa anche in Adobe Commerce 2.4.5-p1.

Contributi comunitari

Siamo grati alla comunità del Magento Open Source e desideriamo riconoscere il loro contributo a questa versione.

Il team di progettazione della community Collaboratori Magento mantiene un elenco dei principali soggetti e partner contributori per mese, trimestre e anno. Dalla pagina Collaboratori, puoi seguire i collegamenti alle loro PR unite su GitHub.

Contributi dei partner

Nella tabella seguente vengono evidenziati i contributi dei partner. Questa tabella elenca il Partner che ha contribuito alla richiesta di pull, il numero della richiesta di pull esterna e il numero del problema GitHub associato (se disponibile).

Contributi dei singoli collaboratori

La tabella seguente identifica i contributi dei membri della community. Questa tabella elenca il membro della community che ha contribuito alla richiesta di pull, il numero della richiesta di pull esterna e il numero del problema GitHub associato (se disponibile).

Requisiti di sistema

Il nostro stack tecnologico è basato su PHP e MySQL. Per ulteriori informazioni, consulta Requisiti di sistema.

Istruzioni di installazione e aggiornamento

È possibile installare Magento Open Source 2.4.5 utilizzando Compositore.

recommendation-more-help
1d4eef6c-fef1-4e61-85eb-b58d7b9ac29f