Opmerkingen bij de release van Magento Open Source 2.4.7

Magento Open Source 2.4.7 introduceert ondersteuning voor PHP 8.3. Het bevat honderden correcties en verbeteringen voor kwaliteit. De afhankelijkheden van Core Composer en bibliotheken van derden zijn bijgewerkt naar de nieuwste beschikbare versies. Deze release verhoogt de GraphQL-dekking voor aangepaste kenmerken en GraphQL resolver-caches. Het introduceert ook steun voor onlangs bijgewerkte diensten FedEx en UPS.

NOTE
Adobe Commerce-releases kunnen niet-compatibele wijzigingen (BIC's) bevatten. Om achteruit-onverenigbaar veranderingen te herzien, zie verwijzing BIC. De grote achteruit-onverenigbaar kwesties worden beschreven in hoogtepunten BIC. Niet alle introducties introduceren grote BIC's.

Overige releasegegevens

Hoewel de code voor deze eigenschappen met versies van de kerncode van de Magento Open Source wordt gebundeld, worden verscheidene van deze projecten ook onafhankelijk vrijgegeven. De fixes van de insect voor deze projecten worden gedocumenteerd in de afzonderlijke, project-specifieke versieinformatie die in de documentatie voor elk project beschikbaar is.

Magento Open Source 2.4.7 benadrukt

In deze release ziet u de volgende hooglichten.

Verbeterde beveiliging

Deze release bevat dezelfde beveiligingsoplossingen en platformbeveiligingsverbeteringen die zijn opgenomen in Adobe Commerce 2.4.6-p5, 2.4.5-p7 en 2.4.4-p8. Zie Bulletin van de Veiligheid van de Adobevoor de recentste bespreking van deze vaste kwesties.

Er zijn tot op heden geen bevestigde aanvallen met betrekking tot deze problemen geweest. Bepaalde kwetsbaarheden kunnen echter potentieel worden benut om toegang te krijgen tot klantgegevens of om beheerderssessies over te nemen. De meeste van deze problemen vereisen dat een aanvaller eerst toegang verkrijgt tot de beheerder. Daarom herinneren we u eraan alle noodzakelijke stappen te nemen om uw beheerder te beschermen, inclusief maar niet beperkt tot deze inspanningen:

  • IP-voegende op lijst van gewenste personen
  • twee-factor authentificatie
  • gebruik van VPN
  • gebruik van een unieke locatie in plaats van /admin
  • goede wachtwoordhygiëne

Aanvullende beveiligingsverbeteringen

De verbeteringen van de veiligheid voor deze versie verbeteren naleving van de recentste beste praktijken van de veiligheid.

  • Veranderingen in het gedrag van niet-geproduceerde geheim voorgeheugensleutels:

    • Niet-gegenereerde cachesleutels voor blokken bevatten nu voorvoegsels die afwijken van voorvoegsels voor toetsen die automatisch worden gegenereerd. (Niet-gegenereerde cachesleutels zijn sleutels die zijn ingesteld via de syntaxis van sjablooninstructies of de methoden setCacheKey of setData .)
    • Niet-gegenereerde cachesleutels voor blokken mogen nu alleen letters, cijfers, afbreekstreepjes (-) en onderstrepingstekens (_) bevatten.
  • Beperkingen op het aantal auto-geproduceerde couponcodes. Magento Open Source beperkt nu het aantal couponcodes dat automatisch wordt gegenereerd. Het standaardmaximum is 250.000. Handelaars kunnen de nieuwe Code Quantity Limit configuratieoptie ( Stores > Settings:Configuration > Customers > Promotions) gebruiken om te voorkomen dat het systeem met veel coupons wordt overweldigd.

  • Optimalisering van het standaard Admin URL generatieproces. Het genereren van de standaard Admin URL is geoptimaliseerd voor verhoogde willekeur, waardoor gegenereerde URL's minder voorspelbaar worden.

  • Een nieuwe instelling voor de configuratie van de cache van volledige pagina's kan de risico's beperken die aan het HTTP {BASE-URL}/page_cache/block/esi -eindpunt zijn gekoppeld. Dit eindpunt steunt onbeperkte, dynamisch geladen inhoudsfragmenten van de lay-outhandvatten van Commerce en blokstructuren. Met de nieuwe configuratie-instelling Handles params size wordt de waarde van de parameter handles van dit eindpunt ingesteld, die het maximaal toegestane aantal handgrepen per API bepaalt. De standaardwaarde van deze eigenschap is 100. Handelaars kunnen deze waarde wijzigen via Beheer (Stores > Settings:Configuration > System > Full Page Cache > Handles params size ). Zie de toepassing van Commerce vormen om Vierkantte gebruiken.

  • toegevoegde Steun van de Integriteit Subresource (SRI) om aan PCI 4.0 vereisten voor controle van manuscriptintegriteit op betalingspagina's te voldoen. De ondersteuning van Subresource Integrity (SRI) biedt integriteitshashes voor alle JavaScript-elementen die zich in het lokale bestandssysteem bevinden. De standaardSRI eigenschap wordt uitgevoerd slechts op de betalingspagina's voor Admin en storefront gebieden. Handelaars kunnen de standaardconfiguratie echter uitbreiden naar andere pagina's. Zie Integriteit Subresourcein de Gids van de Ontwikkelaar van Commerce PHP.

  • Veranderingen in het Beleid van de Veiligheid van de Inhoud (CSP) - de updates en de verhogingen van de Configuratie aan het Beleid van de Veiligheid van de Veiligheid van de Inhoud van Adobe Commerce (CSPs) om aan PCI 4.0 vereisten te voldoen. Voor details, zie Beleid van de Veiligheid van de Inhoudin de Gids van de Ontwikkelaar van Commerce PHP.

    • De standaard CSP-configuratie voor betalingspagina's voor Commerce Admin- en storefront-gebieden is nu restrict -modus. Voor alle andere pagina's is de standaardconfiguratie de modus report-only . In versies vóór 2.4.7, werd CSP gevormd op report-only wijze voor alle pagina's.

    • Een Nonce-provider toegevoegd om uitvoering van inline scripts in een CSP toe te staan. De nonce-provider vereenvoudigt het genereren van unieke nonce-tekenreeksen voor elke aanvraag. De tekenreeksen worden vervolgens aan de CSP-header gekoppeld.

    • Toegevoegde opties voor het configureren van aangepaste URI's voor het rapporteren van CSP-overtredingen voor de pagina Volgorde maken in Beheer en de pagina Uitchecken in de winkel. U kunt de configuratie toevoegen vanuit de beheerfunctie of door de URI toe te voegen aan het config.xml -bestand.

      note note
      NOTE
      Als u de CSP-configuratie bijwerkt naar de modus restrict , worden mogelijk bestaande inlinescripts op de betaalpagina's in de beheerdersinterface en de opslagront geblokkeerd. Dit leidt tot de volgende browserfout wanneer een pagina wordt geladen: Refused to execute inline script because it violates the following Content Security Policy directive: "script-src . Verbeter deze fouten door de whitelistconfiguratie bij te werken om vereiste manuscripten toe te staan. Zie het Oplossen van problemenin de Gids van de Ontwikkelaar van Commerce PHP.
  • Native tarief beperkt voor betalingsinformatie die door REST en GraphQL APIs wordt overgebracht. De handelaren kunnen tarief nu vormen die 🔗 voor de betalingsinformatie beperken die REST en GraphQL wordt overgebracht. Deze extra laag van bescherming steunt preventie van het behandelen van aanvallen en vermindert potentieel het volume van het behandelen aanvallen die vele creditcardaantallen in één keer testen. Dit is een verandering in het standaardgedrag van een bestaand REST eindpunt. Zie het Beperken van het Tarief.

  • Het standaardgedrag van de isEmailAvailablevraag van GraphQL en ( V1/customer/isEmailAvailable) REST eindpunt is veranderd. Standaard retourneren de API's nu altijd true . De handelaren kunnen het originele gedrag toelaten door toe te laten Login van de Controle van de Gast optie in Admin aan yes, maar het doen dit kan klanteninformatie aan unauthenticated gebruikers blootstellen.

Verbeteringen aan platform

Platformupgrades voor deze release verbeteren de naleving van de nieuwste best practices op het gebied van beveiliging.

Magento Open Source 2.4.7 bevat de volgende platformupgrades:

  • PHP 8.3 verenigbaarheid. Deze release introduceert ondersteuning voor PHP 8.3. Magento Open Source ondersteunt nu zowel PHP 8.3 als 8.2. PHP 8.2 wordt ondersteund tot de einddatum van de service (EOS) in december 2025. Na december 2025 zouden alle handelaren met 2.4.7 implementaties moeten migreren naar PHP 8.3.

Magento Open Source 2.4.7 is nog steeds alleen voor upgradedoeleinden compatibel met PHP 8.1. PHP 8.1 wordt niet ondersteund en wordt niet aanbevolen. Magento Open Source 2.4.7 kerncode, alle gebundelde extensies en alle extensies die eigendom zijn van Adoben en SaaS-services zijn compatibel met PHP 8.3.

  • RabbitMQ 3.13 steun. Deze release is compatibel met de nieuwste versie van RabbitMQ 3.13. De compatibiliteit blijft behouden met RabbitMQ 3.11 en 3.12, die worden ondersteund tot respectievelijk augustus 2024 en december 2024, maar Adobe wordt alleen aanbevolen met RabbitMQ 3.13 bij Magento Open Source 2.4.7.

  • Composer 2.7.x. Compatibiliteit met Composer 2.2.x blijft behouden.

  • Varnish geheime voorgeheugen 7.4 steun. Deze release is compatibel met de nieuwste versie van Varnish Cache 7.4. De compatibiliteit blijft behouden met de 6.0.x- en 7.2.x-versies, maar we raden u aan Magento Open Source 2.4.7 alleen te gebruiken met Varnish Cache versie 7.4 of versie 6.0 LTS.

  • Elasticsearch 8.11 verenigbaarheid

  • Ondersteuning voor OpenSearch 2.12 en OpenSearch 1.3

  • Redis 7.2

  • De extjs -bibliotheek is vervangen door de meest recente versie van jsTree .

  • jquery/fileUpload -bibliotheek is verwijderd.

Alle JavaScript-bibliotheken en NPM-afhankelijkheden in de kerncode van de Magento Open Source zijn bijgewerkt naar de nieuwste beschikbare versies. Alle Laminas bibliotheekafhankelijkheden zijn bijgewerkt naar de nieuwste versie die compatibel is met PHP 8.3.

Extra upgrades

  • De gateway van Commerce UPS XML API is gemigreerd aan de nieuwe VERBLIJF API van Commerce UPSom updates te steunen die UPS aan hun API veiligheidsmodelmaakt. (UPS implementeert een OAuth 2.0-beveiligingsmodel (tokens aan toonder) voor alle API's.) Alle vorige Commerce UPS XML API's zijn verwijderd uit de basis van de Magento Open Source 2.4.7-code.

  • De Magento Open Source integratiemet FedEx is gemigreerd van erfenis de Diensten van het Web van FedEx WSDL aan recentste RESTful APIs FedEx. FedEx Web Services Tracking, Address Validation en Validate Postal Codes WSDLS zullen in mei 2024 worden opgeheven.

  • Toegevoegde ondersteuning voor de nieuwe verzendmethode voor het grondvoordeel van USPS. Dit is een out-of-box integratie met de nieuwe verzendmethode van USPS, USPS Ground Advantage, die in juli 2023 is uitgebracht. Deze nieuwe integratie kan worden gebruikt om de verzendkosten op te halen en leveringen te plannen en terug te keren via de verzendservice van USPS. De verzendmethode USPS Ground Advantage vervangt deze verzendmethoden, die werden afgebroken toen de verzendmethode USPS Ground Advantage werd vrijgegeven:

    • USPS Retail Ground
    • First-Class Package Service
    • Grondvlak voor selecteren van pakket
  • De verzendmodules van Temando zijn verwijderd uit de basis van de kerncode voor Magento Open Source. Deze functie is vervangen in Magento Open Source 2.4.4.

Verbeterde prestaties en schaalbaarheid

Magento Open Source 2.4.7 bevat de volgende verbeteringen op het gebied van prestaties en schaalbaarheid van Magento Open Sourcen:

  • Verbeterd indexeerbeheer. De nieuwe opdracht indexer:set-status ondersteunt het dynamische beheer van de indexeerstatus. Admin-gebruikers kunnen deze opdracht gebruiken om de indexeerstatus te wijzigen in suspended, invalid of valid . Deze functie is vooral handig voor het beheer van systeemprestaties tijdens uitgebreide bulkbewerkingen, zoals het importeren of bijwerken van producten, door controle toe te staan over het moment waarop indexeerders automatisch worden geactiveerd door de snijtaken van het systeem. Zie de indexenleiden.

  • de lijstpagina van het Product voor complexe producten met vele opties. De laadtijd is verbeterd voor pagina's met productlijsten die complexe producten met meer dan 100 opties bevatten. Ook de prestaties van GraphQL-aanvragen om producten per categorie te vermelden zijn verbeterd.

  • {de prestatieverbeteringen van de 0} regel van de Verkoop . Betere prestaties van ondernemingsplaatsingen met vele (ongeveer 100.000) actieve verkoopregels. De plaatsingen van de onderneming die bevorderingen in hoge mate uitvoeren stellen vaak vele actieve kartregels op. Deze soorten ondernemingsplaatsingen die Magento Open Source 2.4.7 in werking stellen zullen geen prestatiesdegradatie zien met betrekking tot het aantal gevormde regels van de kartprijs tijdens controleverrichtingen.

  • sneller sparen verrichtingen van opslag-vlakke configuraties voor plaatsingen met vele opslag. Het opslaan van configuratie-instellingen in implementaties met meer dan 500 opslagruimten kan tijdrovend zijn. De nieuwe module van Async Configlaat asynchrone configuratie sparen verrichtingen door een bouwstijlbaan in werking te stellen die een consument gebruikt om sparen verrichting in een berichtrij te verwerken. AsyncConfig is standaard uitgeschakeld.

  • snellere generatie van het config geheime voorgeheugen voor grote configuraties. Het bin/magento cache:clean config bevel prewarms nu het config geheime voorgeheugen wanneer het config geheime voorgeheugen wordt toegelaten. Dit vermindert de onderbreking die wordt vereist om het config geheime voorgeheugen voor grote configuraties te produceren. Opslagbewerkingen voor configuraties zorgen ervoor dat de cache van config_scopes niet langer wordt gewist voordat gegevens naar de cache worden geschreven. Hierdoor neemt ook de tijd af dat andere aanvragen worden vergrendeld terwijl configuratiegegevens worden geschreven.

Braintree

  • Vaulted PayPalen Pay Later Veranderingen - Aangemeld-binnen klanten die eerder hun Paypal-account hebben gearchiveerd/opgeslagen, hebben de optie om te betalen met:

    • Pay Now (zonder zich aan te melden bij hun PayPal -account, kan de gebruiker betalen met de standaardkaart)
    • Betalen met een andere financieringsbron
    • Betalen met een andere account
    • PayPal Pay Later of PayPal Credit knop
  • 3DS steun voorGoogle Pay - Inbegrepen 3DS controlesteun voor Google Pay niet-aan elkaar geplaatste kaarten. Zie de documentatie van de Braintreevoor meer informatie.

  • Vault Apple Pay Payments - Sta aangemelde klanten toe om Apple Pay -betalingen naar hun Commerce-winkelaccount te archiveren of op te slaan voor gebruik bij toekomstige transacties. Dit vermindert het aantal stappen bij het afrekenen en leidt tot een snellere afrekenervaring voor de terugkerende klant.

  • Vault Google Pay Payments - Sta aangemelde klanten toe om Google Pay -betalingen naar hun Commerce-winkelaccount te archiveren of op te slaan voor gebruik bij toekomstige transacties. Dit vermindert het aantal stappen bij het afrekenen en leidt tot een snellere afrekenervaring voor de terugkerende klant.

  • Vault Venmo Payments - Sta aangemelde klanten toe om hun Venmo -accounts in hun Commerce-winkelaccount te archiveren of op te slaan voor gebruik bij toekomstige transacties. Dit vermindert het aantal stappen bij het afrekenen en leidt tot een snellere afrekenervaring voor de terugkerende klant.

  • Vault ACH Payments - Sta aangemelde klanten toe om hun ACH-betalingen naar hun Commerce Store-account te archiveren of op te slaan voor gebruik bij toekomstige transacties. Dit vermindert het aantal stappen bij het afrekenen en leidt tot een snellere afrekenervaring voor de terugkerende klant.

  • Express Paymentknopen bij de bovenkant van checkout - om een snellere controleervaring aan te moedigen, hebben wij Express Payment opties aan het begin van checkout geïntroduceerd. Klanten kunnen nu betalen voor betalingen PayPal , PayPal Pay Later , Apple Pay en Google Pay Express .

  • Braintreede versienota's en de verbindingen van de Steun binnen de Configuratie Admin - de verkopers kunnen nu van de Admin van Commerce aan de steun van de Braintree direct verbinden en online nota's vrijgeven.

  • de steun van GraphQL voor alle Braintree betalingsmethodes behalveVenmo - meer configuraties worden blootgesteld in GraphQL API. Dit is vooral handig voor toepassingen zonder kop.

  • Vaultingbetalingen in rekeningsgebied - Logged-in klanten kunnen nu vault/opslagnieuwe creditcard/debetkaarten en PayPal rekeningen in het de rekeningsgebied van de Klant. Eerder konden klanten alleen maar vault/opslaan wanneer ze hun betalingen voor later gebruik konden opslaan bij het uitvoeren van een transactie op de afhandeling. Nu kunnen ze nieuwe creditcard- en betaalkaarten en PayPal-rekeningen aanschaffen zonder dat ze een nieuwe transactie hoeven te maken.

  • Wrijzingsloze Transacties - de transacties zonder wrijving versnellen het betalingsproces door het aantal klantenkliks/stappen te verminderen om een online krediet/debetkaarttransactie te voltooien. Eerder (toen 3DS werd toegelaten), werd elke klant 3DS uitgedaagd. Met de nieuwe Frictionless Transactions eigenschap, worden de klanten slechts uitgedaagd voor 3DS wanneer de bank het vraagt. Dit vermindert het verlaten van het winkelwagentje, verhoogt de omrekeningskoersen, en leidt tot meer verkoop.

  • Geschil webhooks - wanneer een klant een transactie in Braintree betwist, wordt de geschillenstatus nu overgegaan op Commerce. U kunt de zoekopdracht uitvoeren in het raster Sales > Order en de opdracht vervolgens koppelen aan elke bestelling.

GraphQL

Magento Open Source 2.4.7 bevat verbeterde mogelijkheden voor GraphQL in cache plaatsen, ondersteuning voor GraphQL-schema's voor aangepaste kenmerken, ondersteuning voor annulering van koploze bestellingen en verbeterde mogelijkheden voor het in cache plaatsen van oplosmiddelen.

  • flexibeler wortelbeheer. Met de mutatie clearCart wordt de inhoud van een bepaald winkelwagentje nu in één actie gewist. Deze vervangt de clearCustomerCart -mutatie, die is afgekeurd.

  • Verbeteringen in creëren wortelmutaties. De createGuestCart -mutatie is toegevoegd ter vervanging van de vervangen createEmptyCart -mutatie. Eerder, als u createEmptyCart gebruikte, kon u niet bepalen of de kar voor een gast of het programma geopende klant was.

  • de punten van de Orde omvatten nu productbeelden. OrderItemInterface stelt productafbeeldingen beschikbaar, waardoor afbeeldingen aan geordende producten kunnen worden gekoppeld en efficiënter kunnen worden geladen. GitHub-32369

  • Uitgebreide steun voor resolver caching. De volgende GraphQL query resolvers zijn nu cacheable in het cache van Resolver Results van GraphQL, dat de prestaties verbetert wanneer query's worden verzonden met POST-aanvragen:

    • 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
  • Steun voor orderannulering. De cancelOrdermutatie staat een klant toe om een orde te annuleren, die zijn herkenningsteken en een annuleringsreden overgaan.

  • Verbeterde steun voor douanekenmerken. Ondersteuning voor aangepaste GraphQL-kenmerken is verbeterd door het verrijken van API-gegevens ter ondersteuning van alle kenmerktypen. Het GraphQL EAV-kenmerkenschema biedt nu ondersteuning voor het uitbreiden van klantkenmerken en adresobjecten van klanten in de Admin en het ophalen van deze kenmerken via GraphQL. Enkele gebieden die u wilt verbeteren zijn:

    • uitgebreide/toegevoegde steun van douanekenmerken aan specifieke gebieden zoals klant en klantenadres
    • extra caching voor aangepaste kenmerken
    • verbeterde ondersteuning voor aangepaste kenmerken voor producten
  • Verbeterde GraphQL caching mogelijkheden verbeteren de snelheid van de paginading. Aan deze query's is de mogelijkheid tot caching toegevoegd, waardoor de laadtijd van pagina's voor de meeste PWA-pagina's sneller wordt:

  • verbeterde de parserprestaties van GraphQL. De parserprestaties van GraphQL zijn verbeterd doordat het aantal keren dat de parsermethode per verzoek wordt aangeroepen, is verminderd. Het wordt nu eenmaal genoemd. Eerder werd de parser minstens drie keer opgeroepen.

Nieuwe velden voor bestaande mutaties

  • Toegevoegd het quickorder_active gebied aan storeConfigen availableStoresvragen. In dit veld wordt aangegeven of de functie voor snelle volgorde is ingeschakeld.

  • De volgende velden zijn toegevoegd aan de mutaties setBillingAddressOnCart en setShippingAddressesOnCart :

    • fax
    • middlename
    • prefix
    • suffix

Nieuwe vragen en mutaties

Verouderde query's en mutaties

Inventory management

Inventory management (v1.2.7) biedt tools voor het beheer van de productvoorraad. Deze door de gemeenschap ontwikkelde functie wordt meegeleverd met Adobe Commerce en de kerncode van de Magento Open Source.

Magento Open Source extensiemetapakket

Deze release bevat het metapakket v1.0.0 voor extensie van Magento Open Source, dat automatisch Magento Open Source-extensies bundelt met deze kernrelease. De versie van deze extensie die in dit metapakket is opgenomen, wordt geïnstalleerd wanneer composer update wordt uitgevoerd. Hierdoor wordt het upgraden van de extensie tijdens de upgrade naar de nieuwste kernversie eenvoudiger. Deze extensie onderhoudt een onafhankelijk releaseschema.

Het pakket Magento Open Source extensie voor Magento Open Source 2.4.7 bevat de volgende extensies:

Toekomstige versies van dit extensiemetapakket bevatten aanvullende extensies.

PWA Studio

PWA Studio v14.0 is compatibel met Magento Open Source 2.4.7-bèta1. Het bevat meerdere verbeteringen om de toegankelijkheid te verbeteren. Voor informatie over insectenmoeilijke situaties, zie {de versies van de PWA Studio 0} 🔗. Zie {de verenigbaarheid van 0} Versievoor een lijst van de versies van de PWA Studio en hun compatibele kernversies van de Magento Open Source.

Web API-framework

Deze release introduceert twee nieuwe REST-eindpunten die een oplossing bieden voor een beperking met de REST API GET en POST V1/products/attributes -eindpunten. Deze eindpunten retourneren dezelfde waarde voor het kenmerk is_filterable voor de opties Filterable(with results) en Filterable(no results) van de optie Use in Layered Navigation . (De eigenschap is_filterable attribute is van het type Boolean , dat het instellen van deze eigenschap op Filterable(no results) niet toestaat.)

Twee nieuwe REST-eindpunten zijn geïmplementeerd als een oplossing:

  • PUT /V1/products/attributes/{attributeCode}/is-filterable/{isFilterable}. Padparameters: attributeCode (String) en isFilterable (int waarden zijn: 0 is Nee; 1 is Filterable (with results); 2 is Filterable (no results)).
  • GET /V1/products/attributes/{attributeCode}/is-filterable. Padparameters: attributeCode (String).

Opgeloste problemen

We hebben honderden problemen opgelost in de kerncode van Magento Open Source 2.4.7. Hieronder wordt een subset van de opgeloste problemen in deze release beschreven.

Installatie, upgrade, implementatie

  • De onnodige geheim voorgeheugenmanipulatie is verwijderd uit het opstellingsproces. Eerder schreef Magento Open Source zijn configuratie op schijf onnodig toen bin/magento setup:db-data:upgrade of bin/magento setup:upgrade werd in werking gesteld, die kwesties met sommige modules tijdens opstelling veroorzaakte. GitHub-38124
  • Implementatieproblemen vanwege onvoldoende geheugen en grote tabellen zijn opgelost. De opdracht bin/magento setup:upgrade mislukt niet meer vanwege fouten die te maken hebben met veel geheugen en die te maken hebben met grote MySQL-tabellen.
  • bin/magento setup:install wordt nu voltooid nadat app/etc/config.php is verwijderd. Eerder, werd het ontbrekende dossier niet opnieuw geproduceerd tijdens installatie, en de Magento Open Source veroorzaakte een fout. GitHub-37805
  • bin/magento setup:upgrade is vernieuwd zodat het programma correct kan worden uitgevoerd wanneer een nieuwe module wordt geïnstalleerd die zowel tabellen als gekoppelde mview -indexen installeert. GitHub-37304
  • Het herstellen van de database mislukt niet meer vanwege een scheidingstekenfout. Eerder heeft Magento Open Source deze fout gegenereerd toen bin/magento setup:rollback --db werd uitgevoerd: 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 ;; .
  • De opdracht bin/magento setup:upgrade mislukt niet meer met dit type MySQL-fout met betrekking tot geheugenlimieten: PHP Fatal error: Allowed memory size of 4294967296 bytes exhausted (tried to allocate 20480 bytes) . Migratie van meerdere selecties is geoptimaliseerd om tijdens setup:upgrade minder geheugen te verbruiken.
  • Het genereren van een back-up van een database werkt nu op de verwachte manier vanuit zowel de beheerderslijn als de opdrachtregel. Eerder heeft Magento Open Source deze fout gegenereerd: 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 ;; .
  • Wanneer u setup:config:set uitvoert zonder de parameter --lock-db-prefix op te geven, wordt de huidige waarde niet meer uit het env.php -bestand gewist.
  • De vernisconfiguratie is bijgewerkt om gastgebruikers tot caching inhoud met betrekking tot andere klantengroepen te verhinderen toegang te hebben.
  • bin/magento setup:upgrade wordt nu voltooid wanneer u een nieuwe module installeert die zowel tabellen als gekoppelde mview -indexen installeert.
  • bin/magento setup:upgrade toont nu een informatievere foutenmelding wanneer een onderwerp van de berichtrij geen onderwerpnaam omvat. GitHub-34246
  • bin/magento setup:upgrade geeft nu een informatief foutbericht weer wanneer samengevoegde XML-bestanden ongeldig zijn. Het foutbericht bevat nu de bestandsnaam.

Gebruikersinterface van beheerder

  • Grafieken worden nu met succes onbruikbaar gemaakt door gebrek op het dashboard. GitHub-38430
  • In het menu Verkoop beheerder worden de submenu's nu correct weergegeven. Eerder werkte het kolomeinde niet correct en werden sommige submenu's niet weergegeven. GitHub-37812
  • Select -opties voor vervolgkeuzemenu's zijn nu zichtbaar op Admin Content > Pages wanneer er meerdere pagina's in het raster zijn geselecteerd. GitHub-35386
  • Correctie van het pad naar de standaardwaarde van system/dashboard/enable_charts in configuratie-instellingen. De grafieken worden nu zoals verwacht weergegeven in Admin. GitHub-37668
  • Correctie van het weergaveprobleem met de beheerdersnetwerken. Eerder stonden rasterkolommen niet volledig in de weergegeven pagina.
  • De aanwijskleuren worden nu toegepast zoals u had verwacht op de rijen statische beheerrasters. GitHub-35358
  • In de uitcheckworkflow wordt niet langer een waarschuwing weergegeven wanneer een winkelier een postcode invoert voor Griekenland die geen spatie bevat. GitHub-36676
  • De koppeling Admin It's time to change your password leidt nu naar de pagina Wachtwoord voor beheerder wijzigen zoals u had verwacht. GitHub-37902
  • Achtervoegsels voor paginatitels worden nu opgenomen in de tag title en de tag meta title voor productpagina's. GitHub-37680
  • De status van de productvoorraad wordt nu correct toegepast voor gerelateerde productregels.
  • De knop Login as Customer wordt nu correct weergegeven op mobiele apparaten.
  • Adobe Commerce geeft de knop Admin Add new customer group niet meer weer als de aangemelde beheerder geen toestemming heeft om een nieuwe klantengroep toe te voegen.
  • Een admingebruiker met beperkte toestemmingen kan nu een kindproduct bewaren het waarvan ouderproduct aan een verschillend werkingsgebied wordt toegewezen. Eerder heeft Commerce de cache ongeldig gemaakt voor een bovenliggend product dat niet was toegewezen aan het bereik waarin het onderliggende product werd gewijzigd.
  • Gebruikers met beheerdersrechten kunnen nu schakelen tussen filterweergaven voor beheerders zonder gegevens te bekijken die zijn beschadigd of verloren zijn gegaan. GitHub-37529

Bundelproducten

  • De query customerCart retourneert nu alle toegepaste kortingen op bundelproducten zoals verwacht. Eerder werden de totale kortingen die op een bundelproduct werden toegepast, als nul teruggegeven.
  • De pagina's met productdetails geven nu de juiste prijs weer voor bundelproducten waarvoor een korting van 100% is toegepast. Eerder heeft de Magento Open Source geen korting van 100% toegepast op de prijzen van gebundelde producten.
  • De prijsregels voor winkelwagentjes worden nu toegepast op productbundels in plaats van op elk onderliggend product voor dynamisch geprijsde gebundelde producten.
  • Correctie van een fout die optreedt wanneer u het eindpunt POST V1/shipment gebruikt om een verzending te maken die een bundelproduct bevat. Het eindpunt voegt nu items toe zoals u had verwacht en retourneert deze fout niet meer: The shipment couldn't be saved .
  • U kunt nu de API-route GET V1/shipment/ gebruiken om een verzending te maken met een bundelproduct wanneer het product het together -verzendtype heeft ingesteld. Bundelproducten worden nu ook gevalideerd op basis van hun eigenschap voor het type verzending.
  • Klanten kunnen nu de hoeveelheid van een bundelproduct in hun winkelwagentje bewerken. Voorheen handelde Adobe Commerce geen null-waarden voor ItemId wanneer producten werden bewerkt in de winkelwagentje en een fout werd weergegeven. GitHub-37696
  • De producten van de bundel kunnen nu met succes aan een orde worden toegevoegd Admin gebruikend SKUs die een schuine streep (/) karakter bevatten. Eerder konden beheerders deze methode niet gebruiken om producten toe te voegen aan een Admin-volgorde, en de Magento Open Source heeft een JavaScript-fout veroorzaakt.
  • Admin-gebruikers kunnen nu decimale standaardwaarden voor toegevoegde bundelopties instellen wanneer Qty Uses Decimal is ingeschakeld voor het overeenkomende eenvoudige product. Eerder konden decimale waarden alleen worden ingesteld voor opgeslagen selecties.
  • Geoptimaliseerde prestaties voor het opslaan van bundelproducten met een groot aantal opties
  • Bundelproducten worden nu geïmporteerd zonder dat SKU's in de productopties worden gedupliceerd. Eerder, leidde de Magento Open Source tot veelvoudige dubbele SKUs in productopties wanneer u bundelproducten met dubbele ingangen invoerde.
  • De prijs van het bundelproduct wordt nu correct berekend wanneer een van de producten in de bundel uit voorraad is. Als een product dat deel uitmaakte van de bundel uit voorraad was, werd het eerder uit de prijsberekening verwijderd.
  • Bundelproducten worden nu weergegeven als producten die uit voorraad zijn wanneer het laatste vereiste onderliggende product wordt gekocht. Eerder werden bundelproducten als in voorraad weergegeven in de winkel toen hun eenvoudige producten uit voorraad waren.
  • Prestatieproblemen met het toevoegen van bundelproducten met niet-vereiste opties aan het winkelwagentje met de addBundleProductsToCart -mutatie zijn opgelost.
  • De query categoryList retourneert nu alle bundelopties zoals u had verwacht wanneer de configuratie-instelling van Show out-of-stock products is ingeschakeld. Eerder waren de opties voor out-of-stock niet opgenomen in de query-reactie.
  • Bundel producten die met POST V1/products zijn gemaakt, slagen nu wanneer het prijsbereik van de catalogus is ingesteld op website . Eerder trad een schending van een integriteitsbeperking op. GitHub-35595

Cache

  • Categorieën zijn nu zichtbaar voor kopers in winkels waar de cache is ingesteld op Fastly CDN (Caching Application=Fastly CDN). Dit beïnvloedde zowel gasten als geregistreerde klanten.
  • Cookies in cache plaatsen na aanmelding zijn nu hetzelfde na het bladeren door de website. Eerder, verzond de login controlemechanisme de verkeerde geheim voorgeheugenkoekje, en de pagina's zouden meermaals in het voorgeheugen ondergebracht kunnen zijn.
  • Reacties van GraphQL-GET op CMS-pagina's die CMS-blokken bevatten, worden nu gewist zoals u had verwacht in de snelcache. Volgende planningsupdates tonen nu nauwkeurige, bijgewerkte inhoud voor deze pagina's.
  • De paginacache wordt nu gewist zoals u had verwacht voor een bovenliggend product wanneer een van de onderliggende producten van het bovenliggende product is opgeslagen via de beheerder. Er is een insteekmodulecontrole geïntroduceerd om cachevalidatie te bereiken voor configureerbare varianten, vergelijkbaar met andere producttypen, ongeacht de status van de indexeer (gepland of real-time). Eerder werden de prijzen niet correct bijgewerkt in de winkel nadat een configureerbare variatie van de Admin werd bijgewerkt.
  • Er is een cachemechanisme toegevoegd voor AWS-gebruikersgegevens. Een geloofsbrieven leverancier gebruikt nu het geheime voorgeheugen van Commerce om geloofsbrieven in het voorgeheugen onder te brengen die van AWS voor configuratie EC2 worden teruggewonnen.
  • De plug-in die als doel heeft de configureerbare cachetag toe te voegen wanneer een eenvoudig product dat aan een configureerbaar product is gekoppeld, nu wordt opgeslagen, werkt zoals u had verwacht. Alle relevante configureerbare cachecodes worden verwijderd zoals u had verwacht wanneer een eenvoudig product door POST V1/products wordt bijgewerkt. Eerder werden niet alle prijzen bijgewerkt op de winkel en moesten caches handmatig worden gewist. GitHub-36726

Winkelwagentje en uitchecken

  • Magento Open Source optimaliseert nu de prestaties door geen gebruikersspecifieke prijsaanhalingsgegevens te laden bij het genereren van pagina's met een cachegeheugen, zoals pagina's met productdetails (PDP) en CMS-pagina's wanneer een permanent winkelwagentje is ingeschakeld. Eerder, zou het systeem gebruiker-specifieke zitting en citaatgegevens tijdens de generatie van deze pagina's onnodig laden, die prestaties beïnvloedden.
  • Aangepaste adreskenmerken worden nu opgeslagen zoals u had verwacht in de database. Eerder werden kenmerkwaarden die in de database waren opgeslagen, voorafgegaan door kenmerkcode.
  • Het genereren van filtertekst voor productkenmerken met behulp van tekenregels is verbeterd. Afzonderlijke producten worden niet meer meerdere keren geladen.
  • Magento Open Source geeft nu een informatief foutbericht weer wanneer er een fout optreedt tijdens het uitchecken en de winkelier niet meer terugkeert naar een eerdere uitcheckstap. Eerder werd de koper teruggestuurd naar de verzendpagina.
  • De query cart retourneert niet langer de verzendmethode en het adres voor virtuele winkelwagentjes. Eerder, toen een karretje zowel fysieke als virtuele producten bevatte, en alle fysieke producten werden verwijderd, bleef de kartzoekreactie scheepvaartinformatie omvatten.
  • Magento Open Source geeft nu informatieve berichten weer wanneer een add-to-cart-actie wordt geactiveerd. Eerder werd The requested qty is not available niet altijd zo nodig weergegeven op de winkelvoorgrond.
  • De laadtijden van de afhandelingspagina zijn verbeterd voor klanten met grote adresboeken. Magento Open Source verwerkt nu alleen het aantal klantadressen dat is opgegeven in de instelling Customer Addresses Limit . Eerder, geladen de Magento Open Source het volledige adresboek.
  • De hoeveelheid product kan nu in het winkelwagentje worden gewijzigd zoals wordt verwacht voor artikelen in voorraad wanneer één artikel uit voorraad is. Eerder konden kopers de producthoeveelheid van geen enkel artikel wijzigen als er een product uit voorraad was.
  • Het filter voor productkenmerken van AdvancedSalesRule werkt nu correct met het achtergrondtype voor decimale kenmerken. Als gevolg hiervan werken de regels voor het winkelwagentje met Coupon Type ingesteld op No Coupon nu zoals verwacht.
  • Het volledige bedrag van een volledige kartkorting wordt nu toegepast zoals verwacht aan karten die zowel bundel als configureerbare producten bevatten.
  • Cookies in Customer Section houden zich nu aan de domeininstelling van de cookie. Eerder was de minikaart niet bijgewerkt zoals verwacht in winkels die subdomeinen bevatten, ook al werd de sessie gedeeld.
  • Als een bestelling naar meerdere adressen wordt verzonden, treedt niet langer een fout op tijdens de verwerking van de regio-id.
  • De bedragen met vaste kortingen die op het niveau van het winkelwagentje worden toegepast, zijn nu correct. GitHub-37496
  • Coupons worden nu met succes toegepast op een bestelling wanneer een verkoper de coupon toepast na de vaste verzendmethode te hebben geselecteerd waarbij een regel voor de prijs van een winkelwagen geldt waarbij de verzendmethode als voorwaarde is ingesteld. Eerder is de pagina met het winkelwagentje waarop de coupon wordt weergegeven, niet geldig en is de coupon niet toegepast. GitHub-34866
  • Coupons worden nu met succes toegepast op een bestelling wanneer een verkoper de coupon toepast na de vaste verzendmethode te hebben geselecteerd waarbij een regel voor de prijs van een winkelwagen geldt waarbij de verzendmethode als voorwaarde is ingesteld. Eerder is de pagina met het winkelwagentje waarop de coupon wordt weergegeven, niet geldig en is de coupon niet toegepast. GitHub-34866
  • Het My billing and shipping address are the same checkbox blijft nu gecontroleerd door gebrek wanneer een verkoopster Chrome autocomplete gebruikt om hun het verschepen adres in te vullen en klikt dan daarna alvorens het verschepen methodeblok wordt opnieuw geladen. GitHub-33725
  • De applied_rule_ids -waarde in de quote_item -tabel bevat nu een juiste lijst met toegepaste regel-id's. Eerder bevatte deze waarde alleen de laatst toegepaste regel-id.
  • Mini-cart en klantgegevens in lokale opslag worden nu opnieuw ingesteld wanneer een sessie van de server wordt verwijderd. Eerder werden deze gegevens nog steeds weergegeven toen het sessiebestand werd verwijderd.
  • Aparte winkelwagentjes worden niet meer abusievelijk samengevoegd met de Admin wanneer persistente winkelwagentjes zijn ingeschakeld.
  • De taxatie wagenbelasting en verzendkosten weerspiegelen nu nauwkeurig de standaardconfiguratie van de bestemming. Eerder, toen u de montages van de de bestemmingsberekening van de standaardbelasting vormde en Staat/Gebied en ZIP specificeerde, slechts werd de waarde van ZIP getoond in het karretje onder Estimate Tax and Shipping. Dit is het gevolg van een Magento Open Source waarbij de regio-id is ingesteld op ongedefinieerd voordat de voorwaardelijke instructie wordt aangeroepen waarmee de standaard-id voor het gebied wordt ingesteld via de beheerfunctie.
  • Deze fout treedt niet meer op tijdens het uitchecken wanneer persistente winkelwagentjes zijn ingeschakeld: Invalid state change requested . Eerder, toen deze fout werd geworpen, werden de veelvoudige orden met het zelfde quote_id af en toe gecreeerd.
  • De miniwinkelwagen geeft nu de prijzen van gebundelde producten weer die de configuratie-instellingen van de cartbelasting weerspiegelen. Voorheen omvatte de minikaart altijd belastingen in de prijzen van bundelproducten.
  • De verzendkosten die op de winkelpagina zijn vermeld, zijn nu correct. collectShippingRates wordt nu slechts eenmaal ingesteld. Eerder werd de verzendschatting gedupliceerd. GitHub-36648
  • De query cart retourneert niet langer een fout wanneer een product in het opgegeven winkelwagentje uit voorraad is. Eerder konden kopers die deze query gebruikten om een aankoop te doen, hun aankoop niet voltooien wanneer een object uit voorraad was, en was de afhandelingspagina leeg.
  • Gast-API-aanvragen voor POST V1/guest-carts/<cartId>/shipping-information retourneren niet langer de status cancel als de pagina tijdens de aanmelding in een mobiele omgeving opnieuw wordt geladen. Eerder gaf Magento Open Source een fout van 500 en registreerde deze uitzondering: TypeError: Argument 2 passed to Magento\CustomerCustomAttributes\Model\Plugin\ProcessCustomerShippingAddressCustomAttributes::beforeSaveAddressInformation() must be of the type string, null given.
  • De voorwaarden voor gratis verzending worden nu berekend zoals verwacht wanneer de Subtotal (Excl. Tax) -voorwaarde voor winkelwagentjes wordt toegepast. GitHub-36760
  • De query cart retourneert nu de juiste laagprijs voor een product. GitHub-29655
  • Er zijn informatieve foutberichten toegevoegd aan de afhandelingspagina om kopers te begeleiden wanneer de toepassing van een coupon op de verzendpagina een conflict veroorzaakt met de geselecteerde verzendmethode. Eerder werd aan kopers een bericht gestuurd dat ze moesten terugkeren naar de vorige pagina.
  • Pop-up voor verificatie wordt nu alleen geïnitialiseerd wanneer dit nodig is in plaats van wanneer uitchecken door gasten is ingeschakeld. Het wordt nu geïnitialiseerd wanneer de gastwinkels proberen om verder te gaan met het afrekenen, en gastafhandeling is uitgeschakeld. GitHub-30672

Winkelprijsregel

  • De productsubselect-voorwaarde voor de prijsregel voor winkelwagentjes bevat nu de optie total (incl.tax) zoals verwacht. GitHub-34871
  • De prijsregel voor catalogi van If an item is FOUND/NOT FOUND in the cart with ALL/ANY of these conditions true werkt nu correct met categorie- en SKU-kenmerken. Eerder werd deze voorwaarde niet correct toegepast in de couponlogica voor de cartprijs en werden ongeldige coupons toegepast op orders. GitHub-37660
  • U kunt nu een nieuwe regel voor de winkelwagenprijs opslaan met de extensie Magento_OfflineShipping uitgeschakeld. Eerder heeft Magento Open Source deze fout gegenereerd: report.ERROR: Warning: Undefined array key "simple_free_shipping" . GitHub-37580
  • De regels voor winkelprijzen worden nu toegepast zoals u had verwacht wanneer een regel voor winkelprijzen met betrekking tot een verzendmethode is geconfigureerd voor de winkel. Deze verzendmethode wordt tijdens het afrekenen gewijzigd in een andere. Eerder is de waarde applied_rule_ids nooit gewijzigd in de sales_order_item -tabel en is de regel voor de winkelwagenprijs niet toegepast op de bestelling.
  • Coupons worden nu met succes toegepast op een bestelling wanneer een verkoper de coupon toepast na de vaste verzendmethode te hebben geselecteerd waarbij een regel voor de prijs van een winkelwagen geldt waarbij de verzendmethode als voorwaarde is ingesteld. Eerder werd op de winkelwagenpagina de fout Coupon is Not valid weergegeven en werd de coupon niet toegepast. GitHub-34866

Catalogus

  • Als u bin/magento cache:clean of bin/magento cache:flush uitvoert, wordt de gehele ingebouwde cache of de volledige paginacache van Varnish niet meer leeggemaakt, tenzij anders aangegeven. GitHub-38301
  • Handelaars kunnen nu de Product Carousel gebruiken om CMS-blokken te maken wanneer catalog_product_price dimensions-mode is ingesteld op website . Eerder heeft Magento Open Source het blok niet opgeslagen en deze SLQ-fout gegenereerd: report.CRITICAL: PDOException: SQLSTATE[42S02]: Base table or view not found: 1146 Table .
  • Bij Magento Open Source worden geen dubbele afbeeldingen meer weergegeven wanneer de productkleur wordt gewijzigd op een pagina met productdetails. GitHub-36243
  • Optimaliseerde het algoritme voor het synchroniseren van website-specifieke waarden na het toevoegen van een nieuwe opslag of het veranderen van bestaande één in grote, multi-store milieu's.
  • Het opschoonproces voor afbeeldingsbestanden in de cache is verbeterd en het maken van verborgen mappen in de map pub/media/catalog/product wordt hierdoor voorkomen. Eerder leidden verborgen directory's tot problemen met schijfruimte tijdens opschoningsbewerkingen. De bewerking kan worden beëindigd, waardoor tijdelijke verborgen mappen worden achtergelaten die nooit zijn verwijderd.
  • De prijzen van bundelproducten worden nu correct berekend en een probleem met de volgorde van de transacties bij de berekening van de prijzen is opgelost. GitHub-35665
  • Er is een overbodige component verwijderd uit catalog_product_price indexquery's, die de prestaties van deze indexeerfunctie voor winkels met grote catalogi verbetert. GitHub-32382
  • Als dit veld leeg is gelaten, wordt in het veld Magento Open Source niet langer de tekst van de productbeschrijving ingevoegd in het veld productdetailpagina Meta Description . Eerder, toen een productbeschrijving HTML code bevatte die door de Bouwer van de Pagina of een andere redacteur van de HTML werd geproduceerd, werd de HTML getoond in het Meta Description gebied, en u kon dit gebied niet leeg verlaten.
  • Configureerbare productopties op configureerbare PDP-pagina's van het product worden niet meer beïnvloed door andere configureerbare productopties op de pagina. Eerder, vormbare producten met drop-down attributen veroorzaken niet meer een uitzondering wanneer een productcarrousel op de pagina van productdetails aanwezig is. Configureerbare productopties konden niet worden geselecteerd wanneer andere configureerbare producten met staalopties op de pagina aanwezig waren.
  • Onlangs bekeken productinformatie wordt nu weergegeven in overeenstemming met de configuratie van de winkelweergave. Eerder werden de onlangs bekeken productgegevens niet bijgewerkt per winkelweergave, inclusief naam en voorkeurstaal.
  • Vimeo-video's worden nu naar behoren afgespeeld op productpagina's in de mobiele weergave in Chromium-webbrowsers.
  • Met de opdracht bin/magento catalog:images:resize worden nu op de juiste wijze productafbeeldingen gegenereerd voor de producten die zijn toegewezen aan een aangepaste website met een aangepast thema.
  • De meta-gegevens met NULL of NOT NULL waarden worden nu bewaard voor de standaardopslag volgens checkbox van de Waarde van het Gebruik Standaard zoals verwacht. Eerder werden metagegevens met de waarde NULL niet opgeslagen toen dit selectievakje was uitgeschakeld.
  • Handelaars kunnen nu een bestaande afbeelding verwijderen van de pagina met productdetails en vervolgens een nieuwe afbeelding met dezelfde naam uploaden. Eerder in die omstandigheden werd op de productpagina van de winkel de juiste afbeelding niet weergegeven.
  • De query productDetail retourneert nu de productnaam in plaats van null wanneer het kenmerk product image alt als leeg is ingesteld.
  • Bestellingen die zowel downloadbare als fysieke producten bevatten, bevatten nu werkkoppelingen naar het downloadbare product zodra de bestelling is voltooid. Eerder waren koppelingen naar downloadbare producten pas beschikbaar als de fysieke producten in dezelfde bestelling werden verzonden.
  • URL herschrijft wordt nu bijgewerkt wanneer een categorie van één opslag/wortelcategorie aan een andere opslag/wortelcategorie wordt verplaatst. Verouderde database-items worden nu verwijderd wanneer de subcategorieën worden overgebracht naar nieuwe bovenliggende categorieën. De database bevat nu alleen relevante gegevens. Eerder was url_path niet bijgewerkt met de juiste winkel-id.
  • Het REST V1/products/<sku>/media eindpunt kan nu het gelijktijdig uploaden van meerdere media beelden verwerken. Eerder, terwijl het verwerken van verscheidene verzoeken gelijktijdig, werden de inconsistente gegevens gecreeerd, en de Magento Open Source veroorzaakte een fout toen deze gegevens in het gegevensbestand werden bewaard.
  • Gedeeltelijke herindexprestaties voor de indexeerprogramma's voor Categorieën en Producten zijn verbeterd. Eerder werden op de indexer_update_all_views cron-taak meerdere malen per product of categorie opnieuw indexeerders uitgevoerd.
  • Wanneer de status van de productvoorraad automatisch wordt bijgewerkt naar de voorraadstatus die buiten de voorraad valt op basis van de voorraadconfiguratie (hoeveelheid), wordt de voorraadstatus vervolgens bijgewerkt naar de voorraadstatus wanneer de voorraadhoeveelheid wordt bijgewerkt. Eerder werd de instelling stock_status_changed_auto genegeerd toen de voorraadconfiguratie van een product werd bijgewerkt naar in voorraad.
  • Het sorteren op de werkbalk werkt nu zoals u had verwacht op zoekpagina's wanneer de instelling Remember Category Pagination is ingeschakeld. GitHub-33220
  • Meerdere-selectiekenmerken worden nu op de verwachte manier opgeslagen wanneer het selectievakje Use Default Value in het bereik van de winkelweergave is ingeschakeld. Eerder was dit selectievakje uitgeschakeld toen het product werd bewerkt en de standaardwaarde werd opgeslagen.
  • Admin-gebruikers met toegang tot websites kunnen nu afbeeldingen toevoegen aan een product dat binnen hun bereik valt. Als de beheerder geen toegangsrechten heeft voor het product, wordt een informatief bericht weergegeven. Eerder konden beheerders met toegang tot websites geen afbeeldingen toevoegen aan producten waartoe ze toegang hadden.
  • In Magento Open Source wordt nu de juiste naam weergegeven na het sorteren van producten op naam in Beheer > Category > Products in category in multistore-implementaties, waarbij de productnamen per winkel verschillen. GitHub-36208
  • De mutatie addProductsToCart retourneert nu aanpasbare opties met gegevens. Eerder werden alleen lege aanpasbare opties geretourneerd. GitHub-37599
  • De status met terugwerkende kracht van het product wordt nu correct weergegeven in de winkel. Eerder werden producten die voor verzending beschikbaar waren, onjuist geïdentificeerd als achtergeordend.
  • Geëxporteerde producten hebben nu de juiste manage_stock waarde wanneer de use_config_manage_stock waarde gelijk is aan 1 . Eerder was deze standaardwaarde onjuist.
  • Als u downloadbare producten benadert vanuit de beheerder, treedt niet langer een fout op wanneer de beheerder de winkelweergave wijzigt van de weergave die tijdens het maken van het product wordt gebruikt naar een andere winkelweergave. De prijzen van het product worden nu met succes omgezet in vlotter wanneer een admin gebruiker van mening van alle opslagmeningen aan de standaardarchiefmening schakelt. Eerder heeft Magento Open Source een fout veroorzaakt. GitHub-37519
  • Er wordt niet langer een waarschuwingsbericht weergegeven wanneer u een product opslaat dat met aangepaste opties is gemaakt nadat de afbeelding is verwijderd.
  • De miniatuurafbeeldingen van het product worden nu weergegeven zoals u had verwacht in het waarschuwingsbericht voor productvoorraad dat wordt verzonden wanneer een product weer in voorraad is. Eerder werd deze afbeelding niet weergegeven in het waarschuwingsbericht
  • Het aantal producten in de categoriestructuur (Admin Catalog > Category ) is nu nauwkeurig. Eerder kon het aantal categorieproducten niet worden opgehaald uit de tabel catalog_category_product_index . De typefout die deze fout heeft veroorzaakt, is opgelost. GitHub-35417
  • De hoofdafbeelding van het product op de pagina met productdetails verschuift niet langer zichtbaar naar beneden tijdens het laden van de pagina wanneer product_image_white_borders in thema view.xml is uitgeschakeld. Eerder werd de afbeelding van het product zichtbaar naar beneden verschoven tijdens het laden van de pagina als gevolg van onjuiste instellingen voor de hoogte in Fotorama JS.
  • Klanten worden nu op de hoogte gesteld van een daling van de productprijs wanneer de klant zich abonneert op berichten over prijsdaling. Eerder werden berichten over prijsdalingen niet altijd verzonden vanwege caching op toepassingsniveau.
  • Servervalidatie is toegevoegd aan het proces voor het maken van productkenmerken via de web-API. U kunt het veld Use in Layered Navigation Catalog niet inschakelen wanneer de waarde van het veld Catalog Input Type for Store Owner Text Field , Text Area , Text Editor , Date of Date and Time is. Eerder werden producten weggelaten uit categorieën en zoekresultaten.
  • De categoriepagina wordt nu opnieuw geladen met de juiste paginering nadat een winkelier de pagina opent, de paginering wijzigt, naar een productpagina navigeert en vervolgens terugkeert naar de categoriepagina. GitHub-36563
  • De uit-van-voorraad eenvoudige producten die opties voor een configureerbaar product zijn worden nu getoond zoals gehandicapt op de opslag wanneer Display Out of Stock Products aan ja wordt geplaatst. Eerder werden alle opties weergegeven als beschikbaar, ondanks hun status en werkelijke beschikbaarheid.
  • Het bijwerken van het websitebereikkenmerk in een specifieke archiefweergave negeert niet langer de waarde van dat kenmerk in een algemeen bereik. Eerder, resulteerde het invoeren van productprijzen wanneer de veelvoudige rijen met zelfde SKU en store_view_code in onnauwkeurige prijzen voor het gebrek en Al de meningswerkingsgebied van de Winkel beschikbaar zijn.
  • Handelaars kunnen nu via Beheer een GIF-afbeelding toevoegen aan de afbeeldingengalerie van een product. Eerder werd deze fout door de Magento Open Source weergegeven: imagecolorsforindex(): Argument #2 ($color) is out of range .
  • Er zijn controles toegevoegd om fouten af te handelen die het gevolg zijn van ongedefinieerde arraysleutels. Eerder, voorkwam een fout tijdens het declaratieve schema whitelist generatie.
  • Magento Open Source retourneert nu een geldig resultaat voor de aangepaste datum 01/01/1970 . Eerder retourneerde het aangepaste kenmerk deze fout: Invalid input datetime format of value '1/01/1970 . GitHub-37274
  • routes query's die fragmenten gebruiken retourneren nu categoriegegevens zoals verwacht. Er is eerder een interne serverfout opgetreden op de categoriepagina. GitHub-35906
  • Problemen met het cataloginventory_stock -proces voor gedeeltelijk opnieuw indexeren zijn opgelost en de prestaties van de indexeerfunctie zijn verbeterd. Eerder werden de voorraad- en productcategorieën niet correct bijgewerkt.
  • Magento Open Source genereert nu een omleiding van 301 voor een product wanneer de categorie waartoe het behoort naar een nieuwe bovenliggende categorie is verplaatst. GitHub-37039

Catalogusregels

  • De catalogusregels worden nu correct geïndexeerd wanneer deze worden ingeschakeld door de update van het programma. Als gevolg hiervan worden de prijzen met korting nu correct gegenereerd en geïndexeerd. Eerder, toen twee catalogusregels beschikbaar waren, en één regel na de eerste regel wordt geactiveerd alvorens de eerste regel de indexerende verrichting van de catalogusregel heeft voltooid, werden de catalogusregelkortingsprijzen niet geproduceerd voor de tweede catalogusregel.
  • Catalogusregels worden nu toegepast zoals verwacht in een omgeving met meerdere websites.

Configureerbare producten

  • Handelaars kunnen nu Skip quantity at this time en Skip image uploading at this selecteren wanneer het vormen van een configureerbaar product zonder de bron van bijbehorende eenvoudige producten te beïnvloeden. Eerder leidde het selecteren van Skip quantity at this time tot het verdwijnen van productbronnen.
  • Het label As low as wordt niet meer weergegeven voor een configureerbare productprijs wanneer alle opties dezelfde prijs hebben.
  • Admin-gebruikers met websitemachtigingen kunnen nu een onderliggend product opslaan dat deel uitmaakt van een configureerbaar product in een andere winkelcontext. Het opnieuw indexeren processen slaat nu dit type van configureerbaar product over.
  • Configureerbare producten met twee onderliggende producten worden niet meer gemarkeerd als 'out of stock' wanneer één onderliggend product door een geplande update is uitgeschakeld. Dit was een bekend probleem met 2,4,7-bèta1.
  • De prestaties van sparen verrichtingen voor configureerbare producten met veelvoudige opties zijn verbeterd. Voorheen kunnen er onderbrekingen optreden tijdens het opslaan van het product. GitHub-36928
  • De storefront weergave van configureerbare productprijzen verandert nu zoals verwacht wanneer een winkelier een productoptie selecteert. GitHub-37378

Coupons

  • Couponcodes met een beperkt aantal toepassingen per klant kunnen nu een tweede keer worden gebruikt wanneer de volgorde waarvoor deze voorheen werd gebruikt, mislukt. Eerder werd de promotiecode niet vrijgegeven toen de eerdere bestelling werd geannuleerd.
  • Couponcodes die spatietekens bevatten, worden niet langer ongeldig gemaakt. Eerder, als een waardeboncode een spatieteken bevatte (voor of na de daadwerkelijke code), mislukte de bevestiging. GitHub-38048
  • De waarde van de coupon voor eenmalig gebruik van een klant wordt nu hersteld zoals u had verwacht wanneer de order waarop deze was toegepast, wordt geannuleerd.
  • Het GET V1/coupons/<couponId> eindpunt retourneert nu de volledige verwachte reactie voor handmatig gemaakte coupons, net als voor automatisch gegenereerde coupons. Eerder werden enkele velden weggelaten (bijvoorbeeld usage_limit , usage_per_customer en created_at ).

kraan

  • De aggregate_sales_report_bestsellers_data -snijtaak maakt niet langer zeer grote tijdelijke MySQL-tabellen en wordt nu voltooid. Deze uitsnijdtaak voegt nu gegevens per winkel in, niet voor alle winkels tegelijk. Eerder kon deze uitsnijdtaak resulteren in No space left on device fouten.
  • Het aantal records in behandeling in de cron_schedule -tabel is verminderd door te voorkomen dat taken in de vorm van een uitsnede proberen overbodige taakvergrendelingen in de vorm van een uitsnijding te verkrijgen. Voorheen probeerden cron-taken vergrendelingen te verkrijgen toen het te laat was om de taak uit te voeren. Cron-taken in cron_schedule werden niet als gemist gemarkeerd, ook al hadden ze hun geplande tijd al verstreken. Deze fout wordt ook herhaaldelijk weergegeven in het foutenlogboek: report.WARNING: Could not acquire lock for cron job: indexer_update_all_views .
  • Correctie van de fatale fout 'split-by-zero' in snijexpressies. GitHub-37804
  • Het sales_clean_quotes -uitsnijdproces is geoptimaliseerd en kan sneller worden uitgevoerd door een samengestelde index op store_id en updated_at columns toe te voegen in de tabel met aanhalingstekens. Deze wijziging verbetert de prestaties van de snijtaak bij het verwerken van een groot aantal aanhalingstekens.
  • Admin-gebruikers kunnen nu bekijken welke taak het bin/magento cron:run -proces momenteel uitvoert. De titel van het momenteel actieve proces bevat nu de groep- en taaknamen. GitHub-34321

Klant

  • Met Magento Open Source worden nu de velden Date of Birth , Tax/VAT Number , Gender , Telephone , Company en Fax weergegeven op de pagina met de bewerkingsklant op basis van configuratie-instellingen. GitHub-36196

E-mail

  • E-mails met diakritische tekens of accenten (dat wil zeggen utf8-e-mail) worden nu ondersteund voor klanten en bedrijven en voor het plaatsen van bestellingen door gasten en geregistreerde klanten. Eerder heeft de Magento Open Source geen klantrecords met diakritische gegevens opgeslagen en deze fout weergegeven: Something went wrong while saving the customer .
  • Namen van e-mailafzenders mogen geen dubbele tekens meer bevatten. Een nieuwe validatieregel voorkomt nu dat namen van afzenders met dubbele punten worden opgeslagen in de sectie E-mailadressen van winkel van Admin Stores > General . Eerder konden handelaren de naam van een afzender opslaan die een dubbele punt bevatte, wat in de fouten van de postserver resulteerde.
  • E-mailadressen van klanten kunnen nu diakritische elementen bevatten. Eerder werd bij validatie aan de voorzijde het maken van een gebruiker met diakritische gegevens in zijn e-mailadres niet toegestaan. GitHub-12075
  • E-mails met informatie over voorraden en prijzen worden nu vertaald in de taal die is geconfigureerd voor de standaardwinkelweergave van de website. Eerder waren deze e-mailberichten niet vertaald.
  • POST V1/order/notify-orders-are-ready-for-pickup stuurt nu een e-mail met de melding dat een bestelling alleen kan worden opgehaald als de bestelling klaar is. De e-mail wordt nu geactiveerd slechts wanneer het verzoek zonder een uitzondering is vervuld.

Frameworks

  • Verbeterde foutopsporing door de waarde UNCACHEABLE toe te voegen wanneer een HTTP-header met Varnish wordt uitgevoerd. Eerder werden alleen HIT - of MISS -waarden uitgevoerd. GitHub-37912
  • Toegevoegde code ter ondersteuning van standaardcompressie met vernis. GitHub-38309
  • De opdracht varnish:vcl:generate bevat nu een input-file argument . Dit ondersteunt de toevoeging van een aangepaste VCL aan een Git-opslagplaats ten opzichte van de Commerce-hoofdmap. GitHub-37363
  • De ondersteuning voor Varnish 4.x en 5.x is uit de codebase verwijderd. GitHub-38304
  • phpcodesniffer-composer-installer in composer.json is bevorderd aan v1.0.0. GitHub-36913
  • Probleem verholpen met een onjuiste PHP doc-tag in de Magento\Reports\Block\Adminhtml\Shopcart\Product\Grid -klasse. GitHub-38186
  • Refactored code door codebase die werd gecreeerd toen de coderingspraktijk dicteerde dat om het even welke geheim voorgeheugensectie die in het app/etc/env.php dossier inbegrepen was een frontend sectie zou omvatten. Dit refactoring richt potentiële problemen wanneer de bevordering van Magento Open Source pre-2.4.4 plaatsingen. GitHub-38363
  • Verduidelijkt de foutenmelding die met StockItemValidator.php wordt geassocieerd wanneer een voorraadidentiteitskaart met een waarde van 0 tijdens een API vraag wordt geleverd. GitHub-31107
  • Er is een lege standaardarray toegevoegd aan $tagGenerators in CompositeTagGenerator om fouten te voorkomen tijdens het compileren van afhankelijkheidsinjectie. Eerder resulteerde het uitvoeren van de opdracht bin/magento setup:upgrade wanneer de modules Magento_DirectoryGraphQl en Magento_StoreGraphQl waren uitgeschakeld, in een fout. GitHub-38165
  • De ongebruikte AlgorithmProviderFactory -klasse is verwijderd, evenals afhankelijkheden van deze klasse in klassen zoals JweAlgorithmManagerFactory.php , JweContentAlgorithmManagerFactory.php en JwsAlgorithmManagerFactory . GitHub-37783
  • Het var/log/system.log -bestand bevat niet langer main.INFO -foutberichten. Het logboek van de menuingang is bewogen van niveauINFO aan DEBUG. Eerder werd het bestand var/log/system.log overstroomd met berichten als deze: Add of item with id Magento_Theme::design_config was processed … .
  • Opnieuw laden mislukt niet meer wanneer exec() false retourneert. Er is verificatie toegevoegd aan het vooraf laden om te voorkomen dat array_combine false als tweede argument ontvangt. Als gevolg hiervan wordt het vooraf laden voortgezet wanneer exec() false retourneert. GitHub-37509
  • De module Magento_CatalogWidget is geheel vernieuwd en vervangt de functie $block escape-functies door $escaper escape-functies. GitHub-37107
  • Swaziland is gedurende de hele codebase bijgewerkt naar Eswatini . GitHub-37873
  • De nieuwe Nicaraguaanse valuta (NIO) is toegevoegd aan de lijst van beschikbare valuta's.
  • Correctie van een variabelenaam in CatalogRule/Controller/Adminhtml/Promo/Catalog/NewConditionHtml.php. GitHub-38093
  • Opgeloste fouten in subtotaal ronding die zijn opgetreden bij transacties voor producten waarvoor decimale hoeveelheid is ingeschakeld. GitHub-37817
  • Het datumfilter voor het klantenraster van Admin werkt nu zoals verwacht volgens de opgegeven landinstelling.
  • De opdracht bin/magento setup:upgrade mislukt niet meer vanwege het gegevenstype van de variabele $schemaPatch . Eerder werd de tekenreekswaarde doorgegeven aan de functie get_class , die de fout veroorzaakte. GitHub-37545
  • De verbinding met de MySQL-database wordt nu hersteld als de verbindingstijden tijdens een transactie worden uitgeschakeld wanneer u max_messages = 0 instelt voor de consument. Eerder werd de verbinding beëindigd.
  • De kernmodule magento/module-release-notification is gemarkeerd als afgekeurd in de ontwikkelcode van 2.4 en bevat de volgende opmerking: Starting from Magento 2.4.7, Magento_ReleaseNotification module is deprecated in favor of another in-product messaging mechanism .
  • Proxycodering genereert nu Proxy- en Factory-bestanden zoals wordt verwacht voor implementaties die in de productiemodus worden uitgevoerd. GitHub-35252
  • De Indiase staat Ladakh wordt nu weergegeven als een optie in de vervolgkeuzemenu's Admin-adres State . GitHub-33698
  • De tellingsmarkering voor gebeurtenissen wordt nu weergegeven zoals u verwacht op de categoriepagina.
  • De verboden tag @author is uit de basis van de code verwijderd, inclusief de volgende modules: Magento_user-variable-wee , Magento_Catalog en Magento_Customer , Magento_Wishlist , Magento_Review Tax en in het hele framework. GitHub-37245, GitHub-37246, GitHub-37249, GitHub-37263
  • De serializer JSON in de module User is vervangen met een nieuwe, nauwkeurigere serializer (JsonHexTag). Eerder, vastliep de Magento Open Source soms toen het proberen om gegevens te gebruiken die door regelmatige serializer in series werden vervaardigd wanneer het unescaped elementen bevatte. GitHub-31377
  • De gebroken pijpleidingsfouten komen niet meer voor terwijl het runnen van een volledige herdex (bin/magento indexer:reindex). De verbindingen van AMPQ zijn nu gesloten alvorens de processen van de procesmanager.
  • De validator van het rijbericht valideert nu het subtype van alle serieelementen. Eerder had Magento Open Source een uitzondering.
  • De configuratie van de rijverbinding per onderwerp in app/etc/env.php werkt nu correct. Eerder, produceert de rij van het productalarm niet correct wanneer een nieuwe berichtrij met een douaneuitwisseling werd gecreeerd. Als de rijverbinding voor een onderwerp in app/etc/env.php met een douaneuitwisseling werd gevormd, werd een nieuwe band gecreeerd voor alle onderwerpen met die douaneuitwisseling. Handelaren kunnen productwaarschuwingen niet verwerken.
  • Tijdelijke indelingen die zijn gemarkeerd met een /* mariadb-5.3 */ -opmerking, veroorzaken niet langer fouten tijdens bin/magento setup:install wanneer de MariaDB-server wordt bijgewerkt naar versie 10.5.1 of hoger.
  • Het AwsS3-stuurprogramma werkt nu zoals u had verwacht als vervanging voor de standaard standaardimplementatie voor bestandsopslag. Voorheen konden gegevens beschadigd raken wanneer dit stuurprogramma was geconfigureerd voor bestandsopslag. GitHub-37844
  • bin/magento config:show en set opdrachten die $_ENV -variabelen gebruiken, ondersteunen nu het gebruik van website- en opslagcodes die hoofdletters of kleine letters bevatten.
  • Toegevoegde klassen met !important zoals gebruikt in Tailwind 3 voor CSS-lay-outondersteuning. GitHub-37568
  • Er is een ontbrekende jQuery afhankelijkheid toegevoegd aan het trim-input.js -bestand. GitHub-37683
  • Gebeurtenisspecifieke details worden nu doorgegeven als een tweede kenmerk (context) van de methode log . GitHub-37879
  • Er zijn waarden voor de hoogte-breedteverhouding toegevoegd aan catalogusafbeeldingen en er zijn overbodige scripts verwijderd uit het UI-framework. GitHub-37691
  • Gereviseerde foutberichten die worden geactiveerd door een ongeldige XML-configuratie om meer informatie te verkrijgen. GitHub-37788
  • Afgekeurde code van Refactored verwant aan de verwezenlijking van dynamische eigenschappen door codebase.
  • De prestaties van indexeerders voor grote winkels met uiterst actieve productgegevensbestanden zijn verbeterd. Indexers indexeren nu de meest recente productinformatie eenmaal voor elke index in plaats van meerdere keren. Eerder verdwenen de producten van de website, en de productgegevens konden verouderd op de website zijn. GitHub-30012
  • De recordstatus van mview_state geeft nu nauwkeurig de toestand aan op basis van een wijzigingsactiviteit wanneer een slave-databaseverbinding beschikbaar is. Eerder bleven deze records in cloudimplementaties in de status waiting staan, zelfs als er geen nieuwe items in de wijziging waren.
  • Extra ondersteuning voor de optie precision voor de indeling van valuta om de pariteit van de functie met de afgekeurde ZendCurrency -klasse te behouden.
  • Cookie-berichten zijn omgezet in waarneembare kenmerken en ontwikkelaars kunnen nu de status manipuleren, waardoor wijzigingen in de gebruikersinterface mogelijk worden geactiveerd. Vroeger waren cookies alleen-lezen en konden ze niet worden gemanipuleerd. GitHub-37308
  • Admin-gebruikers kunnen nu een factuur genereren wanneer hun Magento Open Source-instantie is aangesloten op S3-opslag. Eerder werd deze fout door de Magento Open Source weergegeven: Cannot create image resource. File not found . GitHub-35706
  • De Magento Open Source registreert nu een uitzonderingsbericht zoals verwacht wanneer de bevestiging van het BTW-nummer door de VIES-validatiedienst ontbreekt. GitHub-36065
  • De naam Administrators is verwijderd uit de query die wordt gebruikt om de rol van een beheerder op te halen tijdens het maken van de beheerdersrol. GitHub-36998
  • De opdracht bin/magento setup:config:set mislukt niet meer wanneer een ongeldige gebruikersnaam voor de database wordt opgenomen in het app/etc/env.php -bestand. GitHub-37409
  • Sorteren op kolom op gereserveerde woorden in een standaard Admin UI-component leidt niet langer tot een SQL-fout in var/log/exception.log . GitHub-37423
  • Toegevoegd AddDataForCostaRica.php om staatsinformatie voor Costa Rica te verstrekken. GitHub-37382.
  • Verbeterd foutbericht voor scenario waarin de gebruiker probeert toegang te krijgen tot een ongeldige URL van de beheerder. GitHub-35682.
  • Param $options[ positie ] voor muntsymbolen werkt nu zoals verwacht en steunt de aanpassing van de positie van het muntsymbool. Eerder, na het migreren van Kader 1 van Zend, negeerde de toCurrency methode de position parameter. Dit probleem is opgetreden tijdens de hele beheerinterface.
  • Mutex is geïmplementeerd voor orders om rasvoorwaarden tijdens update door gelijktijdige aanvragen te voorkomen. Eerder leidden gelijktijdige aanvragen (rasvoorwaarden) voor orderannuleringen tot dubbele vermeldingen in de tabel inventory_reservation .
  • De functie populateWithArray transformeert nu objecteigenschappen naar het juiste hoofdlettergebruik, zodat deze compatibel zijn met de AbstractModel getters en setters. Eerder was de opmaak van het hoofdlettergebruik onjuist wanneer de naam van het gegevenskenmerk meerdere hoofdletters in een rij bevatte.
  • De automatische verhogingswaarde in de catalog_product_entity_varchar lijst stijgt nu correct nadat een product wordt bewaard. Eerder steeg deze waarde met tien.
  • Magento Open Source genereert niet langer deze uitzondering op het bestandssysteem wanneer u de JavaScript/CSS-cache probeert te leegmaken: No such file or directory .
  • De waarde van value_id in customer_entity_int wordt nu op de juiste wijze verhoogd. Er wordt een updatequery uitgevoerd in plaats van insert on duplicate key update bij het bijwerken van een entiteit die deze kenmerken bevat. Als gevolg hiervan nemen de automatisch verhogende kolommen die in het EAV-model worden gebruikt, lineair toe. Eerder, het auto-verhogende proces voor kolommen overgeslagen waarden toe te schrijven aan ontbroken tussenvoegselvragen. GitHub-28387
  • Overbodige witruimte is verwijderd uit id -kenmerken waarvoor dit niet nodig is. (Deze fout werd geïntroduceerd door een Magento Open Source 2.4.6 codeverandering.)
  • De winkelcodes worden niet meer weergegeven in de URL van de winkel wanneer de winkel zich in de modus Eén winkel bevindt. GitHub-36831
  • Er zijn kleine updates uitgevoerd voor around plug-ins. GitHub-31443
  • De stalen Helper zijn vernieuwd om misleidende importaliassen te verwijderen. GitHub-31373
  • Admin-gebruikers kunnen nu een sitemap.xml -bestand verwijderen of de naam ervan wijzigen zoals verwacht. Eerder kon een beheerder het bestand verwijderen van de beheerder, maar het bleef in het bestandssysteem. GitHub-37468
  • Coupons worden niet meer gemarkeerd als gebruikt wanneer betaling mislukt voor de order waarop ze zijn toegepast. De berichten van de rij worden nu verwerkt in de orde waarin zij worden gepubliceerd wanneer de consument is begonnen. Eerder, werd het eerste bericht getrokken uit de rij om eenvoudig te controleren of de berichten een rij werden gevormd, en werd daarna verworpen, die het eerste bericht veroorzaakte dat het laatst werd verwerkt.
  • Magento Open Source genereert niet langer een uitzondering in het logbestand wanneer een gebruiker een verzendlabel probeert af te drukken. Eerder, als een uitbreiding reactiekoppen wijzigt die een gehechtheid bevatten, wiet het systeem een uitzondering in het logboekdossier.
  • Ondersteuning voor meer HTML-klassen is toegevoegd aan elements.xsd . GitHub-36891

Algemene correcties

  • De naam van de reponseBody variabele is gewijzigd in responseBody in app/code/Magento/CatalogRule/Controller/Adminhtml/Promo/Catalog/NewConditionHtml.php . GitHub-38093
  • Door productupdates te plannen, worden multiselect-kenmerkgegevens niet meer gewist. Eerder, toen een update voor een product werd gepland, werden de multi-select attributengegevens van het product fout ontruimd. GitHub-37675
  • Wanneer u een product opslaat met een winkelbereik dat niet standaard is, krijgen ongewijzigde kenmerken geen opslagbereik meer wanneer ze worden geladen met ProductRepository . GitHub-8897
  • Informatieve foutberichten zijn toegevoegd aan de validatie van aangepaste velden op pagina's met productdetails. GitHub-38006
  • Speciale tekens kunnen nu worden gebruikt in naamvelden. Eerder was het en-teken (&) beperkt in de naamvalidator, waardoor de klant geen bewerkingen meer kon toevoegen of bewerken wanneer de naam van de klant een en-teken bevatte. GitHub-38080
  • Admin-gebruikers met beperkte toegang tot een specifieke winkel kunnen nu massale updates uitvoeren om productrevisies bij te werken. Eerder maakte Magento Open Source de volgende uitzondering: report.CRITICAL: TypeError: array_intersect(): Argument #1 ($array) must be of type array, null given in app/code/Magento/AdminGws/Model/Models.php:439 .
  • De functionaliteit Wachtwoord tonen van de storefront login pagina toont nu wachtwoorden zoals verwacht. Eerder werden wachtwoorden niet weergegeven. GitHub-37432
  • De vergelijkingslijst van producten is nu altijd website-specifiek voor gastkopers en bevat geen producten die van de andere websites werden toegevoegd, met inbegrip van producten die aan beide websites werden toegewezen.
  • CMS-inhoudsblokken die emojis bevatten, worden na de emoji niet meer afgekapt wanneer ze in de database worden opgeslagen. Eerder werd de inhoud afgekapt na de emoji omdat de standaarddatabaseconfiguratie geen ondersteuning bood voor tekens van vier bytes.
  • Wachtwoorden worden nu op de verwachte manier weergegeven wanneer het selectievakje Show Password op de aanmeldingspagina actief is.
  • Het de systeemattribuut van het Wachtwoord van het Terugstellen van de Token van het Wachtwoord van de klantenentiteit (rp_token) bevestiging is verwijderd uit kenmerkbevestiging tijdens de verwezenlijking van de klantenrekening, en de diakritische bevestiging is inbegrepen slechts in resulterende klantene-mail. Eerder heeft de Magento Open Source de klantrecord niet opgeslagen en deze fout weergegeven: Something went wrong while saving the customer .
  • U kunt nu bewerkingen opslaan op het raster Admin Pages en Blokkeren nadat u een kolom hebt verwijderd. GitHub-37525
  • Klanten kunnen zich nu met succes aanmelden met een nieuw wachtwoord van het ene apparaat nadat ze hun wachtwoord opnieuw hebben ingesteld op een ander apparaat.
  • Het gebied van het de klantenadres van Admin Staat/van de Provincie behoudt nu de laatste bewaarde waarde zoals verwacht. Eerder, toen u de waarde uit dit gebied verwijderde, bleef de Magento Open Source de geschrapte waarde op het Staat/Provincie gebied tonen. GitHub-36846
  • Er treden geen fouten meer op tijdens aanvragen voor een RSS-feed voor categorieën als RSS Feed Top Level Category is ingeschakeld. Eerder, resulteerde het doorbladeren van de RSS voedercategoriepagina in Elasticsearch CRITICAL fouten in logboekdossiers toen RSS Feed Top Level Category werd toegelaten.
  • De juiste waarde wordt nu opgeslagen voor gws_store_groups wanneer het rolbereik wordt gewijzigd tijdens het maken van een gebruikersrol. Eerder, toen rolwerkingsgebied als All werd geselecteerd, werd de gws_store_groups waarde bewaard als ongeldig tijdens gebruikersverwezenlijking maar niet tijdens rol het uitgeven. Als het rolbereik was geselecteerd als Custom , werd de waarde gws_store_groups altijd opgeslagen als null.
  • U kunt de pagina Wachtwoord voor opnieuw instellen nu openen door op de koppeling Wachtwoord voor opnieuw instellen van beheerder op de aanmeldingspagina voor beheerders te klikken wanneer de instelling Add Store Code to Urls is ingeschakeld. Met de koppeling Wachtwoord voor opnieuw instellen Admin werd de aanmeldingspagina of 404 pagina geopend.
  • De datumwaaier in het dashboard van de Statistieken Admin wordt nu berekend gebaseerd op de tijdzone die in configuratiemontages wordt geplaatst, dan omgezet in UTC om gegevens van het gegevensbestand te halen.
  • Het CMS-hiërarchiefilter werkt zoals u had verwacht nadat u een winkelweergave hebt gefilterd en vervolgens op Save Beheer Content > Hierarchy hebt geklikt. Als u voorheen op Save klikte, werd de pagina vernieuwd, maar de context is verloren gegaan en de geselecteerde winkelweergave werd niet meer weergegeven.
  • Als u op de knop Send invitation klikt (Beheer Marketing > Private sales > Invitation ), wordt nu een aanvraag voor een POST samen met de formuliersleutel verzonden en wordt de uitnodiging verzonden. Eerder, toen u deze knoop klikte, waren noch de methode van de POST van HTTP noch de vormsleutel aanwezig.
  • Nul-byte bestanden kunnen nu met succes naar externe opslag worden gekopieerd met AWS S3.
  • Admin-gebruikers kunnen nu een nieuw klantadres van de beheerder toevoegen wanneer die klant is gemaakt voor een andere website waarvan de winkel-id niet overeenkomt met de website-id. Eerder werd dit pop-upbericht weergegeven door de Magento Open Source: Something went wrong . GitHub-36582
  • Op de CMS-pagina voor blokeditors wordt nu de juiste widget block_id -waarde weergegeven. GitHub-29644

GraphQL

  • De query getCustomerWishlist resulteert niet langer in een interne serverfout wanneer er lijsten worden opgevraagd die configureerbare producten bevatten.
  • De query customerCart retourneert nu alle toegepaste kortingen op bundelproducten zoals verwacht. Eerder werden de totale kortingen die op een bundelproduct werden toegepast, als nul teruggegeven.
  • De query getCustomerWishlist resulteert niet langer in een interne serverfout wanneer er lijsten worden opgevraagd die configureerbare producten bevatten.
  • De declaratie van de markering is_subscribed , de oplosser, cache en de bijbehorende tests zijn verplaatst van de module CustomerGraphQl naar de module NewsletterGraphQl .
  • De mutatie addProductsToCart rapporteert niet langer gerelateerde fouten in user_errors . Eerder werden fouten met betrekking tot het winkelwagentje opgenomen in user_errors , samen met de verwachte bewerkingsfouten. GitHub-37908
  • Het filter van het products vraagproduct kan nu gedeeltelijke gelijke resultaten evenals volledige gelijken terugkeren. Het nieuwe attribuut match_type (PARTIAL, FULL) ondersteunt het opgeven van het type overeenkomst. Eerder, keerde de vraag slechts volledige gelijken terug.
  • Mutex is toegevoegd aan de addConfigurableProductsToCart -query om rasvoorwaarden tijdens een update door gelijktijdige aanvragen te voorkomen. Eerder, toen een handelaar twee parallelle verzoeken verzond om het zelfde configureerbare product aan een kar toe te voegen, werden twee afzonderlijke punten met het zelfde product SKU toegevoegd. GitHub-37847
  • Productaggregatie in GraphQL-reacties bevat nu niet-nulwaarden voor kenmerken wanneer Use in Layered Navigation is ingesteld op Filterable (no results) . Eerder werden alleen waarden die niet gelijk waren aan nul geretourneerd.
  • Verbeterde prestaties van de query van setShippingAddressForEstimate voor bewerkingen met betrekking tot winkelwagentjes waarbij aangepaste productkenmerken worden gebruikt. Eerder, geladen de vraag alle productattributen toen de parameters als variabelen werden verzonden.
  • Het veld products query ConfigurableProduct.configurable_options retourneert nu alleen waarden waarvoor ten minste één ingeschakeld product beschikbaar is. Eerder werden in dit veld eenvoudige producten uitgeschakeld.
  • Verbeterde prestaties van de GetCategories query door het aantal onnodige SQL-query's dat wordt gegenereerd te verminderen.
  • Adresfoutafhandeling voor GraphQL-bibliotheekcomponenten werkt nu zoals verwacht.
  • De query products retourneert nu alle relevante prijsgegevens voor de winkel wanneer de dynamische prijsstelling is ingesteld op Geen en kortingen worden toegepast. Eerder werd het prijsbereik voor producten niet geretourneerd. GitHub-35649
  • GraphQL-transactienamen bevatten nu alleen querynamen op het hoogste niveau in de New Relic-logboeken. Eerder, omvatten de transactienamen ook secundaire vraagnamen.
  • Adresfoutafhandeling voor GraphQL-bibliotheekcomponenten werkt nu zoals verwacht.
  • Als de instelling Zichtbaarheid voor een product is ingesteld op Catalog , worden de vragen van products over dat product nu correct verwerkt. Voorheen werd een beschikbaar filter overgeschakeld op de instelling Visibility: Catalog . GitHub-36591
  • De query customer retourneert nu een product_sale_price -veld dat belastingen op bestellingen bevat wanneer de productprijs is geconfigureerd om belasting op te nemen. GitHub-36946
  • Productkenmerken van het type DateTime worden nu toegewezen aan het filter FilterRangeTypeInput in productvragen. Eerder werden deze kenmerken toegewezen aan FilterMatchTypeInput . Als gevolg van deze wijziging zijn voor het filteren van query's op DateTime -kenmerken from en to -waarden vereist in plaats van overeenkomende waarden.
  • De query customer retourneert nu alleen revisies van klanten die betrekking hebben op een specifieke opslagweergave zoals verwacht wanneer deze wordt gefilterd op opslag-id.
  • De categories -query retourneert niet langer een fout wanneer de items.redirect_code -reactiewaarde een null-waarde bevat. GitHub-36675
  • De mutatie changeCustomerPassword activeert nu e-mail zoals verwacht nadat een wachtwoord opnieuw is ingesteld.
  • urlResolver en route query's retourneren nu een resultaat wanneer de Target Path van het herschrijven van de URL een absolute URL is. Eerder, keerde de urlResolver vraag ONGELDIG terug toen u het gebruikte om omleidingsgegevens terug te winnen.
  • De query products retourneert nu de juiste labels. GitHub-29635
  • De query categoryList retourneert nu een gevulde product -sectie van het blok options voor de onderliggende producten van bundelproducten zoals u had verwacht. Eerder werd geen informatie over de onderliggende producten van het bundelproduct geretourneerd.
  • De query route retourneert nu routes voor categorieën en producten zoals verwacht zonder een interne serverfout. GitHub-36544
  • Met de query products worden nu url_key -waarden opgehaald wanneer meerdere categorieën zijn geselecteerd.
  • products -query's retourneren nu alleen aggregaties voor producten die zijn toegewezen aan de opgegeven gedeelde catalogus.
  • Transactienamen zijn toegevoegd aan New Relic GraphQL-transacties. GitHub-36874
  • De methode OptionValueProvider class get() retourneert nu een waarde voor de kenmerkoptie op basis van de opgegeven option_id . Eerder werd een fout geretourneerd. GitHub-35910
  • De query products retourneert nu alle beschikbare aggregaties (filters) en hun correct vertaalde labels. Eerder waren de labels voor prijs- en rubriekaggregatie niet zoals verwacht vertaald. GitHub-36140
  • U kunt nu een fragment ProductCard gebruiken bij het opvragen van related_products , upsell_products en crossell_products on ProductInterface . GitHub-29769
  • De query van products retourneert nu verwante, upsell en cross-sell-producten in de volgorde waarin ze zijn opgeslagen. GitHub-36461
  • GraphQL query's retourneren nu verwante productgegevens gesorteerd op positie. GitHub-33010
  • category_url_path is toegevoegd aan ProductAttributeFilterInput . Dit biedt ondersteuning voor het aanvragen van alle producten voor een categorie in één query. GitHub-32460
  • Correctie van een fout waarin de methode die de huidige opslag in een mutatie van GraphQL plaatst vóór de methode wordt uitgevoerd die bevestiging behandelt. GitHub-31336

Afbeelding

  • Het uploadformulier voor het Admin-favicon-pictogram ondersteunt nu .ico bestandstypen. GitHub-34858

Importeren/exporteren

  • Bij het importeren van het product worden de waarden nu met het juiste scheidingsteken geparseerd. Eerder werd tijdens het importproces de verticale operator ("|") gebruikt om multi-select-waarden te parseren totdat het vastgestelde waardescheidingsteken niet gelijk was aan de standaardwaarde. Het importproces is vervolgens mislukt.
  • Er worden nu automatisch 301 omleidingen gemaakt wanneer URL Key -waarden worden bijgewerkt door CSV-import.
  • De verzendtabelsnelheden worden nu bijgewerkt zoals u had verwacht in het CSV-bestand met de tabelsnelheid. Het uploadbestand voor tabelsnelheden wordt tijdelijk opgeslagen totdat de asynchrone uitsnijdtaak van de configuratieprocessor wordt uitgevoerd. Deze uitsnijdtaak haalt de nieuwe locatie van het bestand op en verwerkt het dienovereenkomstig. Eerder werden de tabelfrequenties niet naar behoren bijgewerkt, omdat de asynchrone processor het bestand op de verkeerde locatie opzocht.
  • In het raster Bestanden exporteren worden nu alle geëxporteerde bestanden weergegeven, ongeacht de tijdstempel. Eerder werden niet alle geëxporteerde bestanden met dezelfde tijdstempel in het raster weergegeven. GitHub-36951
  • Producten met aanpasbare opties kunnen nu met succes worden geïmporteerd. Eerder zijn tijdens het importeren gegevens over opties verloren gegaan. GitHub-37598
  • Speciale tekens in geëxporteerde CSV-bestanden worden nu naar behoren weergegeven in Excel. GitHub-37921
  • Stambronnen en klantadressen importeren met de Customers and Addresses (single file) deze optie is nu voltooid.
  • Importeren van product mislukt niet meer vanwege onvoldoende geheugen. Eerder is het importeren van een aantal producten naar een database die al ongeveer tien miljoen producten bevat, mislukt vanwege een gebrek aan geheugen.
  • Met validatiecontroles wordt het importeren gestopt zoals u had verwacht als er geen geldige gegevens zijn om te importeren. Deze fout wordt nu weergegeven in de Magento Open Source: There are no valid rows to import . Eerder werd de validatie onder deze voorwaarden doorgestuurd, maar het importproces is mislukt met het volgende bericht: entity values are mixed . GitHub-32905
  • Wanneer u URL-sleutels met hetzelfde product importeert, worden de bestaande standaardweergavesleutels niet meer overschreven of verwijderd. URL-herboekingen worden nu alleen opnieuw gegenereerd voor opslagweergaven als de waarde url_key niet is overschreven. Als u eerder een URL importeert, wordt deze herschreven met dezelfde URL-sleutel en wordt de bestaande URL-standaardweergavesleutel genegeerd. (key_store URL herschrijft is verwijderd, maar de URL herschrijft op het weergaveniveau Standaard voor het product is nog steeds ingesteld op key_store .)
  • Het aantal producten verandert niet onverwacht tijdens het importeren. Het leegmaken van de cache wordt nu uitgesteld tot na het importeren.
  • De status van geplande importacties geeft nu op de juiste wijze aan of het importeren is gelukt of mislukt. Eerder werden alle acties geregistreerd als geslaagd.
  • Bij Magento Open Source wordt nu rekening gehouden met de instelling Disable Automatic Group Change Based on VAT ID tijdens het importeren van klantrecords. Eerder werd de waarde disable_auto_group_change in de importbestanden genegeerd. GitHub-36409
  • Magento\Framework\Convert\Excel verwerkt nu getallen die worden voorafgegaan door een spatie. De Excel-XML codeert nu velden als een String . Eerder heeft de Excel-schrijver deze waarden gecodeerd als number , wat tot ongeldige bestanden heeft geleid. GitHub-33422
  • Merchants kunnen nu de landinstelling opgeven waarin de importgegevens worden weergegeven en de manier waarop gegevensvalidators deze gegevens moeten parseren. Als er geen waarde voor de landinstelling is opgegeven, gebruikt de Magento Open Source de standaardconfiguratielocatie (niet de standaardwinkelweergave) om de gegevens te parseren. In de beheerdersinterface blijven import- en exportprocessen de landinstelling van de beheergebruikersinterface gebruiken voor respectievelijk het importeren, parseren en opmaken van gegevens.
  • Wanneer u producten importeert met country_of_manufacture -kenmerken die zijn gemaakt door een gebruiker met een andere landinstelling dan de beheerder die de producten importeert, wordt niet langer een validatiefout gegenereerd. Eerder kon deze importbewerking resulteren in een validatiefout voor het kenmerk country_of_manufacture .
  • Geëxporteerde producten hebben nu de juiste manage_stock waarde wanneer de use_config_manage_stock waarde gelijk is aan 1 . Eerder was deze standaardwaarde onjuist.
  • Magento Open Source geeft nu een informatief foutbericht weer in het geplande importraster wanneer een afbeelding niet correct is geïmporteerd tijdens een geplande importbewerking. Eerder werd geen foutbericht weergegeven.
  • Het importeren van producten wordt niet meer onderbroken wanneer productafbeeldingen ontbreken. Eerder, toen een productbeeld tijdens de invoer van een derservice gebruikend een Csv- dossier ontbrak, toonde de Magento Open Source deze fout: Maximum error count has been reached or a system error is occurred!.
  • Tijdens het importeren van het product wordt niet langer een validatiefout gegenereerd wanneer een kenmerkwaarde in de kolom configurable_variations een komma bevat.
  • Decodering is uitgesloten van het exportproces. De tekst van het CSV-exportbestand blijft na het importeren ongewijzigd. Als gevolg hiervan verandert de beschrijving na het opnieuw importeren niet. Eerder werden HTML-tags verwijderd uit de Page Builder-editor nadat het product was geëxporteerd en geïmporteerd.
  • Niet-standaardconfiguraties (website- of opslagbereik) die als omgevingsvariabelen worden toegevoegd, onderbreken het app:config:import -proces niet meer met een recursiefout.
  • Zoekopdrachten en prijsindexen in de modus Opslaan van catalogus bijwerken worden na het importeren niet meer ongeldig. Eerder werd de versie van het Elasticsearch Indexer-document gewijzigd toen nieuwe en bestaande producten werden geïmporteerd.
  • Productrapporten worden nu geëxporteerd naar de map var . Eerder werden deze rapporten geëxporteerd naar de hoofdmap van het document, een alleen-lezen map in cloudinstanties.
  • De lege multi-uitgezochte gebieden van het klantenadres onderbreken of stoppen niet meer het uitvoerproces.

Index

  • Verbeterde prestaties van de catalogrule_product -index wanneer er geen regel voor de catalogus is ingesteld. GitHub-34784
  • Problemen met de prestaties van de prijsindexer zijn opgelost. Indexeerprestaties gaan niet meer geleidelijk achteruit. De indexeerder is refactored om de snelheid van de indexerverwerking te verhogen door te veranderen hoe de tijdelijke lijsten worden gecreeerd. Deze tijdelijke tabellen worden nu opnieuw gemaakt in plaats van te worden behandeld met tijdrovende DELETE-instructies.
  • De prestaties van de prijsindexator zijn verbeterd. Een indexwenk is toegevoegd aan de prijsindexeerder die de runtime van vragen MySQL verbetert die tijdens het indexeren in brand worden gestoken.
  • Alle indexen gebruiken nu dezelfde kleuren om de indexeerstatus te vertegenwoordigen. GitHub-34648
  • De prestaties van de indexer van het Product van de Regel van de Catalogus in plaatsingen waar de regels niet aan alle websites worden toegewezen zijn verbeterd.
  • Het maken van een aangepast producttype wanneer indexeerders zijn ingesteld op Update on schedule , leidt niet langer tot een mislukking van de indexupdate cron . GitHub-36471
  • bin/magento indexer:reindex customer_grid mislukt niet meer met een MySQL-fout wanneer het raster van de klant nieuwe aangepaste klantkenmerken bevat. GitHub-36233
  • Als u de indexeermodus voor meerdere indexen wijzigt (dat wil zeggen de modus voor de indexering van een handeling voor massa wijzigt), wordt de modus van de indexeerder alleen gewijzigd als de huidige modus afwijkt van de modus die wordt toegepast. Dit verbetert de prestaties door onnodige overgangen naar de database te voorkomen. GitHub-36823
  • De indexering van producten met veel kenmerkopties is verbeterd. GitHub-36386

Infrastructuur

  • Er is een ontbrekende return -instructie toegevoegd aan de schakelcontroller voor beheerdersgebruik. Eerder was er geen return -instructie en werd de controller in FrontendController -klasse onjuist afgehandeld. GitHub-31374
  • MySQL CREATE TEMPORARY TABLE ... LIKE is vervangen door refactored CREATE TEMPORARY TABLE voor compatibiliteit met MySQL 8.x. GitHub-37926
  • Magento Open Source neemt niet langer het volledige pad naar de hoofdmap van de server op in het foutbericht dat wordt weergegeven wanneer een onjuist geformuleerd HTTP-verzoek naar de server is verzonden. Alleen tekenreeksen worden nu als tweede argument doorgegeven aan de methode explode .
  • restricted_classes.php heeft Zend_Validate_File_Upload vervangen. Eerder liep de validator vast tijdens het uploaden van een importbestand dat groter was dan de waarde die in php.ini was geconfigureerd. GitHub-37281
  • De e-mailsjabloonengine kan nu bepaalde geneste instructies correct verwerken (bijvoorbeeld {{if}}{{depend}}...{{/depend}}{{/if}} ). GitHub-36438
  • product -query's met aggregatiegegevens retourneren nu de juiste labelwaarden voor productkenmerken van het type Boolean. GitHub-29123
  • Er zijn Oekraïense regio's toegevoegd aan de tabel directory_country_region . GitHub-35187
  • CSS-bestanden zijn niet meer beschadigd wanneer ze worden samengevoegd wanneer var/tmp en pub/static zich op verschillende bestandssystemen bevinden en CSS Merging Enabled is ingeschakeld. Tijdelijke bestanden zijn gemaakt in dezelfde statische map als het doelbestand, zodat beide bestanden zich in hetzelfde bestandssysteem bevinden. Als gevolg hiervan is de aanroep om de naam ervan te wijzigen atomisch. GitHub-29172
  • Oplossing voor een mogelijke fout bij het aanroepen van een lidfunctie getId() on int , die soms een uitzondering teweegbracht toen een klant in Admin werd bekeken.
  • De controles van het type worden nu afgedwongen voor serietype in de bewerker van ontwerpthema config. GitHub-34440

Inventory management

  • De producten worden nu automatisch teruggestuurd naar de status In-stock na een creditnota die een teruggave van de producthoeveelheid bevat. Als een product uit voorraad was, maar een creditmemo de voorraad van dit product terugbracht, moesten handelaren de status van de productvoorraad handmatig wijzigen.
  • Verbeterde prestaties van de inventarisindexeerder op async wijze door overtollige verzoeken te verwijderen om standaardbronpunten opnieuw te indexeren.
  • Correctie van problemen met de inventarisindex die de nauwkeurigheid van de voorraadtelling van de opslagplaats van configureerbare producten beïnvloedden. GitHub-36421
  • Het bijwerken van voorraadbronitems via REST V1/inventory/source-items werkt nu sneller. De vraag leidt niet meer een re-index of een schoon-geheim voorgeheugenverrichting op ongewijzigde inventarisproducten in werking.
  • REST V1/products/<sku> activeert nu een automatische herindex van aandelen wanneer de voorraadstatus van een product wordt bijgewerkt. Eerder werd geen voorraadherindex geactiveerd voor het product dat werd bijgewerkt.
  • De configureerbare status van de productvoorraad wordt nu bijgewerkt in de winkel, zoals u had verwacht wanneer onderliggende producten door V1/inventory/source-items zijn bijgewerkt.
  • De aanroep van POST <store_code>/V1/inventory/source-items REST valideert nu de lading voor witruimte in geretourneerde inventarisbronitems en verstuurt een foutbericht over validatie indien nodig.
  • Handelaars kunnen kopers nu laten weten dat een bestelling gereed is voor ophalen wanneer de instelling No Manage Stock is ingeschakeld voor een product. Eerder, toen deze instelling werd ingeschakeld, gaf de Magento Open Source het volgende foutbericht weer: Your order is not ready for pickup .
  • De handelaren kunnen nu een creditnota voor orden tot stand brengen waarvan een eenvoudig product dat met een configureerbaar product wordt geassocieerd is geschrapt. Eerder konden handelaren de creditnota niet maken, en Magento Open Source gaf een TypeError uitzondering.
  • Het aantal Admin-rasterbronnen retourneert nu geldige records nadat een filter is toegepast. Eerder heeft de methode getSourcesCount altijd het totale aantal bronnen geretourneerd nadat een filter was toegepast.
  • De categoriepagina wordt niet meer omgeleid naar het beheerdashboard wanneer u producten sorteert met de optie "Van voorraad naar beneden verplaatsen". Het probleem is opgelost door de SQL join-instructie pas in de voorwaardelijke instructie te plaatsen nadat ervoor is gezorgd dat deze al niet is opgenomen. Eerder, opnieuw richtte de pagina aan het dashboard Admin met het bericht:Invalid security or form key. Please refresh the page.
  • AUTO_INCREMENT van de inventory_source_item -tabel wordt niet meer verhoogd bij elke UPDATE -bewerking. Eerder verhoogde elke update de waarde AUTO_INCREMENT van deze tabel, waardoor de waarde van AUTO_INCREMENT uiteindelijk buiten het bereik viel wanneer een nieuwe record aan de inventory_source_item table werd toegevoegd. Als gevolg hiervan ontvingen beheergebruikers de volgende fout toen ze probeerden een nieuw product te maken van Admin: Numeric value out of range... .
  • Admin-gebruikers kunnen nu een product vanuit de beheerfunctie aan een winkelwagentje toevoegen voor een bepaald weergavebereik met Inventory management. Eerder werd de voorraad-id niet correct bepaald en konden gebruikers van de beheerder het product niet aan de klantenkar toevoegen.
  • De synchronisatie tussen Inventory en Catalogus baseert zich niet meer op Synchronize with Catalog configuratie het plaatsen. Eerder werden de producten alleen correct gesynchroniseerd wanneer deze instelling was ingeschakeld.
  • Magento Open Source genereert niet langer een fout na het opnieuw laden van de pagina wanneer een winkelier een producthoeveelheid aftrekt van een bestelling die binnen het bereik van het beschikbare product valt bij het selecteren van de verzendbron.
  • De configureerbare status van de productvoorraad wordt nu correct bijgewerkt wanneer een configureerbaar product en de waarde van de onderliggende producten Stock Availability wordt bijgewerkt door een update van de massavoorraad. Eerder, kon u een configureerbaar product en zijn kindproducten niet terugkeren aan voorraad door massaupdate.
  • Het gegevenstype voor niet-standaardbronnen is bijgewerkt naar DECIMAL (12, 4) ter ondersteuning van maximaal acht cijfers met gehele getallen. Dit is dezelfde limiet die voor de standaardvoorraad is geïmplementeerd. Deze waarde is nu synchroon met Admin het toevoegen en bewerken van productpagina's, die invoervalidering voor maximaal acht cijfers voor alle typen inventarisbronnen ondersteunen. Eerder werd de invoer voor het veld Quantity (voor niet-standaardbronnen) alleen ondersteund door maximaal zes cijfers.
  • Zowel standaard als niet-standaard bronnen tonen nu de correcte informatie voor product verkoopbare hoeveelheid wanneer een niet-standaard bron die van de opslagplaats werd bevolen voor verzending wordt verwerkt. Eerder gaf de Magento Open Source een onjuiste voorraadstatus voor productbronnen weer.
  • \Magento\Catalog\Model\Product::getIsSalable() retourneert nu de voorraadstatus op basis van het bereik dat is gedefinieerd in het product-object (\Magento\Catalog\Model\Product::getStoreId() ). Eerder gaf getIsSalable() de voorraadstatus op basis van het huidige bereik, ongeacht het productobject.

Logboekregistratie

  • Admin-gebruikers kunnen nu de logboeken voor bulkacties zien die worden gemaakt door integratie in de sectie Logbestand voor bulkacties van Admin.

Aanmelden

  • Het opnieuw instellen van een wachtwoord in één browser en het vervolgens aanmelden via een andere browser leidt niet langer tot een uitzondering. GitHub-36447
  • Klanten worden nu omgeleid naar de aanmeldingspagina nadat ze een account hebben geactiveerd zoals u had verwacht. Eerder werden klanten automatisch aangemeld.

Nieuwsbrief

  • Commerce controleert nu of de functionaliteit voor abonnementen op nieuwsbrieven is ingeschakeld voordat nieuwe abonnees op een nieuwsbrief worden geaccepteerd. GitHub-33040

Orders

  • Producten die van het winkelwagentje Admin naar de lijst met artikelen naar bestelling worden verplaatst, worden nu verwijderd zoals u van het winkelwagentje verwacht. GitHub-37538
  • Merchants kunnen nu creditmemo's maken zoals verwacht voor de gedeeltelijke teruggave van orders die gedeeltelijk door bonuspunten zijn betaald. Eerder, toen een handelaar een gedeeltelijke terugkeer creeerde, werd de ordestatus verkeerd geïdentificeerd als gesloten, en de Admin ordepagina toonde geen creditmemo opties.
  • Magento Open Source past nu het juiste kortingsbedrag toe op gedeeltelijk geannuleerde orders. Eerder werd het kortingsbedrag, zoals berekend in de kolom base_discount_cancelled , onjuist berekend wanneer een bestelling werd gewijzigd. Er is steun voor negatieve waarden toegevoegd aan facturen voor gedisconteerde bestellingen.
  • Met Magento Open Source worden nu aangepaste adreskenmerken van de klant gesorteerd op basis van de sorteervolgorde die was opgegeven toen de beheerder de volgorde in Admin heeft gemaakt.
  • De pagina Verkooporderraster voor beheerders wordt nu op de verwachte manier geladen wanneer een handelaar een zoekopdracht vanuit deze pagina start. Eerder, toen een handelaar probeerde om orden van deze lijst te zoeken, vulde de pagina, en de Magento Open Source een Request-URI Too Long fout in de browser console.
  • Verbeterde prestaties van de methode OrderRepository::get() door het aantal keren te verminderen dat een bestelling uit de database wordt geladen. Deze methode heeft eerder meerdere keren een bestelling geladen. GitHub-36636
  • Handelaren kunnen nu creditnota's genereren voor orders die bepaalde objecten met een totaal van nul bevatten wanneer andere bestellingen beschikbaar zijn voor restitutie. Eerder konden handelaren geen meerdere terugbetalingen uitvoeren wanneer een klant een korting van 100% had op bepaalde items in de bestelling.
  • Koppelingen tussen onderliggende en bovenliggende producten worden nu op de bestelpagina weergegeven tijdens het opnieuw ordenen van het onderliggende product vanuit de beheerfunctie. GitHub-37028
  • De emulatie begint nu tijdens send() -aanroepen nadat de emulatie tijdens de getInfoBlockHtml() -aanroep is voltooid en er geen fout is geregistreerd. Eerder was het bestand system.log overstroomd met de volgende fout: main.ERROR: Environment emulation nesting is not allowed . GitHub-35603
  • Handelaren kunnen nu creditnota's genereren voor orders die bepaalde objecten met een totaal van nul bevatten wanneer andere bestellingen beschikbaar zijn voor restitutie. Eerder konden handelaren geen meerdere terugbetalingen uitvoeren wanneer een klant een korting van 100% had op bepaalde items in de bestelling.
  • Koppelingen tussen onderliggende en bovenliggende producten worden nu op de bestelpagina weergegeven tijdens het opnieuw ordenen van het onderliggende product vanuit de beheerfunctie. GitHub-37028
  • De koptekstsectie van de orderpagina bevat nu de verwachte informatie over de verzonden factuur, creditnota en verzending. GitHub-27474
  • Creditnota's voor orders die slechts één configureerbaar product bevatten, worden nu op de juiste wijze gegenereerd. Eerder heeft de functie isLast() true niet zoals verwacht geretourneerd. GitHub-36722
  • Verbeterde prestaties van de aggregate_sales_report_bestsellers_data cron-taak door de hoofdgegevensquery te optimaliseren.
  • De status van bestelling is nu juist wanneer een gedeeltelijke terugbetaling is uitgevoerd voor een bestelling die bundelproducten bevat. Eerder werd de status van de bestelling als volledig vermeld nadat een gedeeltelijke terugbetaling was verleend, ook al was de resterende bestelling niet volledig. GitHub-37377
  • Klanten kunnen een product niet meer bestellen tegen een aangepaste prijs wanneer de beheerder voor het eerst een bestelling genereert met behulp van de eenmalige aangepaste prijs. Als een bestelling een object met aangepaste prijzen bevatte, werd deze aangepaste prijs eerder toegepast op andere bestellingen die met de functionaliteit voor herbestelling waren geplaatst.
  • Kopers kunnen geen onjuiste orderstatussen meer opslaan op de orderpagina. De status van de bestelling wordt niet meer gewijzigd van Voltooid in Verwerken wanneer een object wordt verzonden. Eerder controleerde de Magento Open Source de huidige status van de bestelling niet voordat de status van de bestelling werd opgeslagen nadat een winkelier een opmerking had ingevoerd. GitHub-36562
  • Het raster van de verkooporde wordt nu asynchroon gesynchroniseerd met alle orden zoals verwacht. GitHub-36562
  • De filterfunctie voor aanschaf in de sectie met klantorders op de pagina met bestellingen werkt nu naar behoren. Eerder, kwam een fout van JavaScript voor toen de logica van de tijdzoneconversie een fout veroorzaakte toen de zelfde tijdzone aan de methode werd verstrekt.
  • Op het dashboard Admin worden nu de juiste volgordestatistieken weergegeven bij de eerste keer laden. Eerder werd op het dashboard onjuiste ordegegevens weergegeven, maar werden de juiste gegevens weergegeven zodra de tijdsperiode was bijgewerkt.
  • Admin-gebruikers worden nu naar behoren omgeleid naar de orderpagina nadat ze een winkelweergave hebben geselecteerd tijdens het maken van nieuwe bestellingen via de beheerfunctie.
  • Het GET V1/orders/<OrderID> eindpunt keert nu informatie over zowel de configureerbare als eenvoudige producten in de orde ongeacht de voorraadstatus van de eenvoudige producten terug. Admin-gebruikers kunnen nu alleen orders plaatsen als de geselecteerde items (producten) in voorraad of te koop zijn. Eerder gaf deze API alleen informatie over de producten die in voorraad waren.
  • De pagina met creditnota loopt niet meer vast wanneer de optie voor gratis verzending is ingeschakeld wanneer de verzendprijs inclusief belasting is en belastingberekeningen na kortingen worden toegepast. Eerder maakte Magento Open Source een Division by zero uitzondering. GitHub-36800
  • Wanneer u het eindpunt van rest/V1/orders/{id}/comments gebruikt om een opmerking over een bestelling te plaatsen zonder de status van de bestelling op te geven, heeft dit niet langer invloed op de weergave van de bestelling. Eerder werd de orderstatus geregistreerd als NULL in de tabellen sales_order en sales_order_grid en de volgorde werd noch weergegeven op de pagina Mijn bestellingen, noch op het orderraster Admin. GitHub-34180

Page Builder

  • De afbeeldingen behouden nu de juiste hoogte-breedteverhouding wanneer ze worden vergroot of verkleind in Page Builder. GitHub-37493
  • De Bouwer van de pagina toont nu foutenmeldingen zoals nodig wanneer u probeert om een beeld te uploaden groter dan de gespecificeerde maximumdossiergrootte. Eerder werd door Commerce een waarschuwingsbericht weergegeven voor geüploade afbeeldingsbestanden die kleiner waren dan het opgegeven maximum.
  • De schuifregelaars voor CMS-paginaproducten bevatten nu de bovenliggende producten van alle onderliggende producten die zijn geselecteerd voor opname in de schuifregelaar. Eerder waren de bovenliggende producten van de schuifregelaar uitgesloten.
  • Inhoud die is omgezet in HTML, wordt nu naar behoren weergegeven in e-mailsjablonen wanneer de module Magento_AsyncConfig is uitgeschakeld. Eerder bevatten e-mailsjablonen alleen onbewerkte HTML.
  • De prestaties van het opslaan van de Page Builder-bewerkingen in de Chrome-browser zijn verbeterd.
  • Wanneer u een product vanuit de Page Builder-carrousel aan een winkelwagentje toevoegt, wordt het aantal artikelen niet meer gedupliceerd van pagina's met twee verschillende widgets waarop dezelfde producten worden weergegeven.
  • Page Builder voegt het kenmerk tabindex HTML niet meer toe aan hyperlinklabels a wanneer u een hyperlink bewerkt en vervolgens een sjabloon opslaat.
  • De producten widget en de voorvertoning van de Bouwer van de Pagina behandelen nu correct HTML speciale karakters. Eerder werden SKU's met het teken & niet correct weergegeven in de productwidget.
  • De inhoud van het tekstelement Pagina Builder wordt nu naar behoren bijgewerkt wanneer u het volledige inhoudsblok selecteert en bijwerkt in de voorvertoningsmodus.
  • Het kopiëren en plakken van tekst van de ene de tekstredacteur van de Bouwer van de Pagina aan een andere werkt nu zoals verwacht. Eerder kon de pagina waarin u tekst probeerde te plakken niet worden opgeslagen, en de Magento Open Source toonde deze consolefout: [ERROR] Page Builder was rendering for 5 seconds without releasing locks..
  • Het inhoudstype van de Bouwer van de pagina column-block dat in oudere versies van de Bouwer van de Pagina werd gecreeerd wordt nu correct getoond.
  • Het filteren voor de beschrijving van de productmetagegevens tijdens het maken van het product vanuit de Admin is verbeterd. Eerder, als de Bouwer van de Pagina werd toegelaten, werd de beschrijving van productmeta-gegevens geproduceerd die op het standaard {{name}} {{description}} masker wordt gebaseerd. Het standaardmasker voor de meta-beschrijving van het product bestaat nu uit {{name}} . GitHub-36107
  • Het toevoegen van een dynamisch blok zonder inhoud leidt niet langer tot een fout.
  • Problemen met de weergave van kolommen in de inhoud van Page Builder zijn opgelost. Eerder werd inhoud van het column-line inhoudstype niet gerenderd. GitHub-3949

Betaling

  • Met Magento Open Source worden nu 502 fouten correct verwerkt door het maken van bestellingen te voorkomen wanneer deze fout optreedt. Eerder werden nog steeds bestellingen gemaakt ondanks een fout van 502 met PayPal, wat tot inconsistenties tussen de Magento Open Source records en die van PayPal leidt.
  • PayPal Express Checkout-transacties bevatten nu SKU's voor onderliggende producten en volledige producttitels. Het bestand Magento/Paypal/Model/Cart.php verzamelt nu SKU's van onderliggende producten met hun bovenliggende producttitel om de producttitel te identificeren met de onderliggende SKU. GitHub-36808
  • De configuratie-instelling Card Security Code Does Not Match wordt nu verwerkt zoals verwacht tijdens het betalingsproces van Payflow Pro. Eerder werd dit evaluatieproces nooit voltooid, waardoor de afhandeling werd geblokkeerd.
  • De optie Vault-betalingsmethode wordt niet meer weergegeven in de workflow voor het uitchecken van beheerders wanneer de winkelier geen vault-token heeft. GitHub-36273
  • De knop Venmo kan nu worden verborgen wanneer de PayPal-knoppen zijn ingeschakeld. Eerder kon de knop Venmo niet worden verwijderd van de pagina's voor kar, mini-kar, productdetails of uitchecken.
  • Klanten kunnen nu een verzendmethode selecteren terwijl ze couponcode toepassen tijdens het afrekenen. Eerder onder deze omstandigheden heeft Magento Open Source een fout gemaakt en vaste verzendkosten aan de bestelling toegewezen.
  • Problemen met de verwerking van PayPal- en PayPal-betalingsmethoden voor betalingen via winkels zijn opgelost.
  • Opgeloste problemen met fallback-URL's voor bestellingen die zijn betaald met Ideale betalingen als lokale betaling is ingeschakeld.
  • Kopers kunnen geen PayPal-bestelling meer maken zonder een achternaam toe te voegen.

Braintree

  • Betalingsgegevens voor Braintreeën worden nu per winkel opgeslagen en kopers zien nu alleen de kaartgegevens die zijn opgeslagen in de winkel waar ze winkelen. Eerder konden kopers tijdens het afrekenen de opgeslagen kaartgegevens van alle winkels zien. GitHub-34253
  • Klanten kunnen nu een bestelling die naar meerdere adressen wordt verzonden, uitchecken met behulp van een betalingsmethode voor Braintreeën wanneer de kluis voor kaartbetalingen is uitgeschakeld. GitHub-37615
  • Gedeeltelijk gefactureerde orders worden nu zoals verwacht in de correcte account vastgelegd in implementaties waarbij verkopers twee verschillende handels-id's voor dezelfde valuta hebben op hun Braintree-account.
  • Magento Open Source genereert niet langer een fout bij het maken van een tweede gedeeltelijke factuur voor een bestelling die door de Braintree wordt betaald wanneer Enable Vault for Card Payments is ingeschakeld. Eerder, toen een handelaar probeerde om een tweede rekening tot stand te brengen, veroorzaakte de Magento Open Source deze fout: Your payment could not be taken. Please try again or use a different payment method. Payment method token is invalid.
  • De optie voor de betalingsmethode Braintree Vault wordt niet meer automatisch uitgeschakeld in de uitcheckworkflow wanneer een winkelier zijn factureringsadres bijwerkt. Eerder werd de betalingsmethode uitgeschakeld toen de uitvinder de knop My billing and shipping address are the same had uitgeschakeld.
  • Problemen met uitchecken met PayPal via Braintree na upgrade van Adobe Commerce 2.4.5-p2 zijn opgelost. GitHub-37242
  • Telefoonnummers worden nu naar behoren weergegeven met adressen in de velden Verzendadres voor pop-upobjecten van Google Pay. Eerder ontbraken telefoonnummers.
  • Orders worden nu met Braintree geplaatst wanneer de reactie van de Braintree een lege waarde voor threeDSecureInfo/eciFlag bevat. Eerder is een PHP-fout opgetreden tijdens het uitchecken toen deze waarde leeg was.
  • Er treedt niet langer een fout op wanneer een winkelier een coupon toepast op de pagina voor het controleren van bestellingen wanneer hij of zij uitcheckt met Google Pay van de mini-winkelwagen. Eerder werd de koper omgeleid naar een pagina van 404.
  • Klanten kunnen nu het afrekenen voltooien met Braintree Payments en Magento Open Source 2.4.6 met onzichtbare ReCAPTCHA v2 of v3. GitHub-37241
  • Klanten kunnen niet meer op de knop PayPal klikken om een configureerbaar product aan te schaffen zonder eerst de vereiste opties te selecteren. Eerder konden kopers op de knop PayPal klikken en vervolgens met een fout teruggaan naar de productpagina:
  • De knop PayPal wordt nu weergegeven zoals u had verwacht op de pagina's met het winkelwagentje en de miniwagentje. Eerder werd deze knop niet weergegeven op de winkelwagentje pagina en gedupliceerd op de miniwinkelwagentje pagina.

Prestaties

  • De veelvoudige klikken in de Verkoop > ordent drop-down menu van de de massageactie van de pagina produceren niet meer veelvoudige verzoeken van de POST. GitHub-37997
  • Alleen 200 - of 404 -reacties worden in het cachegeheugen opgeslagen wanneer een gebruiker naar een pagina navigeert die een omleiding van 301 activeert, tenzij de header van het cachebeheer van de pagina private bevat. Eerder werd een HTTP-status 200 met private in de header Cache-Control in cache geplaatst en een HTTP-status 301 werd in cache geplaatst, tenzij deze private bevatte in de header Cache-Control. GitHub-36492
  • Ongebruikte Magento\Catalog\Controller\Adminhtml\Product\Initialization\Helper is verwijderd uit Magento\Catalog\Model\ProductRepository . Eerder heeft ProductRepository deze hulplijn geladen. Dit is een Adminhtml -controller. GitHub-37864
  • Verbeterde laadsnelheid van pagina's wanneer veel opties worden toegevoegd aan gebundelde producten. GitHub-29409
  • Het toewijzen van producten aan categorieën op het tabblad Products in Category is geoptimaliseerd. De knoppen Assign en Remove op het tabblad Add Product by SKU worden nu uitgeschakeld totdat de producten volledig in het raster zijn geladen. Eerder konden beheerders geen producten door SKU toevoegen in catalogi die miljoenen geregistreerde producten bevatten.
  • De prestaties van de mutatie addProductToCart bij uitvoering met veel aangepaste productkenmerken zijn verbeterd. Eerder, toen deze mutatie met vele productattributen (ongeveer 1000) werd uitgevoerd, probeerde de Magento Open Source om alle productattributen te laden.
  • De problemen met de prestaties bij het laden van productkenmerken die door de regels voor winkelwagentjes worden gebruikt, zijn opgelost. Alleen productkenmerken voor actieve regels voor winkelwagentjes worden nu geladen.
  • De opdracht bin/magento setup:perf:generate-fixtures setup/performance-toolkit/profiles/ee/small.xml wordt nu met succes uitgevoerd wanneer meerdere keren wordt uitgevoerd. Eerder werd deze fout gegenereerd wanneer deze meerdere keren werd uitgevoerd: Coupon with the same code already exists .

Aanbieding

  • De effecten van de prijsregel Fixed amount discount for whole cart worden, wanneer deze met de Apply to shipping amount -regel worden toegepast, nu proportioneel verdeeld, zoals verwacht, tussen producten en verzendbedragen. Eerder waren kortingsberekeningen onjuist.
  • De instelling Discard Subsequent Rules wordt nu toegepast zoals u had verwacht. Wanneer deze instelling is ingeschakeld, kunnen andere regels met een lage prioriteit alleen op een ander product worden toegepast. GitHub-35707

reCAPTCHA

  • Onzichtbare reCAPTCHA v3 werkt nu zoals verwacht voor de knop voor de uitcheckpagina Sign in . Eerder konden kopers zich niet aanmelden en Commerce heeft JavaScript-fouten veroorzaakt.
  • De Google reCAPTCHA in de uitcheckworkflow werkt nu naar behoren voor cheques, postwissels en aangepaste betalingsmethoden.
  • Adobe Commerce-formulieren kunnen niet meer worden verzonden voordat het selectievakje Google ReCAPTCHA is geladen.
  • De reCAPTCHA-widget gaat nu vooraf aan de knop Place Order op de betaalpagina. Eerder werd de widget boven aan de pagina weergegeven.

Rapporten

  • Het orderrapport (REPORTS > Sales > Orders ) bevat nu correcte volgordewaarden wanneer orders worden gegenereerd door winkels die valuta's gebruiken die niet als standaard fungeren. Eerder bevatte dit rapport onjuiste waarden. GitHub-36742
  • Verkeerde informatie in het formulier voor het rapport van de verkooporder is voor de duidelijkheid herzien.
  • Admin-gebruikers kunnen nu zoeken naar records met e-mails met + (plus)-tekens op de pagina Rapport Verlaten winkelwagentjes. GitHub-36560

Zoeken search-heading

  • De suggesties voor automatisch aanvullen van zoekopdrachten op de voorzijde van de minizoekopdracht van de koptekst werken nu naar behoren. Eerder werd dit veld niet automatisch ingevuld als deze functie was ingeschakeld. GitHub-37557
  • De prestaties van vragen die van de Admin onderzoeksbar worden gemaakt zijn verbeterd door de toevoeging van een indexeerder. Eerder, groter de search_query lijst, langer nam de vraag om te voltooien.
  • Alfabetische sortering van producten op naam werkt nu goed voor namen die Turkse tekens bevatten.
  • De eigenschap Use in Search Results Layered Navigation product attribute wordt nu alleen weergegeven wanneer Use in Search instelling is ingesteld op Yes .
  • De geavanceerde zoekprijs- en SKU-filters werken nu goed wanneer ze samen worden toegepast in een geavanceerde zoekopdracht. GitHub-37581
  • Zoekopdrachten worden niet meer uitgevoerd voor lege zoekvelden. Hierdoor wordt de tabel search_query kleiner. Eerder gaven onjuiste query's of query's op lege zoekvelden een enorme gegevensset, waardoor de tabel van search_query groter werd en problemen met /tmp ontstonden.
  • Storefront-filters werken nu zoals u had verwacht bij het sorteren van catalogusitems met aangepaste vervolgkeuzekenmerken.
  • In de zoekresultaten worden nu de relevante resultaten weergegeven op basis van het zoekgewicht van de kenmerken zoals verwacht.
  • Informatieve tekst onder het Storefront Properties invoerveld Stores van het kenmerk Search Weight in Admin Attributes > Product beschrijft nu mogelijke waarden. GitHub-36646

Verzending

  • De prijsregels voor winkelwagentjes werken nu zoals verwacht wanneer een bundelproduct aan de winkelwagentje wordt toegevoegd wanneer dynamische prijskenmerken worden uitgeschakeld. Gratis verzending en de juiste tabelsnelheid worden toegepast, ongeacht of het kenmerk dynamic is in- of uitgeschakeld. Eerder werd gratis verzending niet toegepast zoals was verwacht.
  • Magento Open Source gaat nu over naar een nieuwe verzendpagina zoals u had verwacht na het maken van een gedeeltelijke verzending voor een bestelling. Eerder, na het creëren van een gedeeltelijke verzending, leidde de Magento Open Source niet tot een volledige ladingspagina voor de resterende producten van de orde. GitHub-38063
  • Het totale bedrag voor het verzenden van een bestelling naar meerdere adressen wordt nu correct berekend. Eerder, toen een citaat meer dan één verschepend adres bevatte, werkte de totale inzamelaar het verzendende bedrag voor het adres bij dat in $quote->getShippingAddress() wordt gegeven in plaats van het door te geven door $shippingAssignment zoals verwacht. GitHub-37283
  • Magento Open Source genereert niet langer een uitzondering tijdens het afrekenen met meerdere verzendadressen wanneer de beheerder de aanmelding als functie van de klant heeft gebruikt.
  • De producten worden nu correct vermeld op het Create net van de Producten van de pagina van Pakketten wanneer u producten aan een pakket toevoegt nadat het verschepende etiket is gecreeerd.
  • De query van cart retourneert nu discrete verzendkortingen als afzonderlijke verzendkortingen met unieke kortingslabels. De nieuwe eigenschap applied_to korting ondersteunt differentiatie tussen kortingen die worden toegepast op een winkelwagentje. Eerder werden alle verzendkortingen gecombineerd in één hardcoded Shipping Discount -waarde.
  • Wanneer een beheerder een nieuwe volgorde maakt, vullen de facturerings- en verzendadressen van de eerste volgorde automatisch de relevante velden in wanneer de beheerder op de knop Reorder klikt (Admin Sales > Orders > View ). Als de zelfde adressen in het het adresboek van de verkoopster worden bewaard, zal re-order altijd een bijgewerkte versie van deze adressen opnemen. Eerder was het veld Verzendadres al ingevuld met de bijgewerkte gegevens, maar het veld Factuuradres niet.
  • Het tekstvak Shipping Policy is nu zichtbaar in het weergavebereik van Admin Store wanneer Apply custom Shipping Policy is ingeschakeld en een aangepast verzendbeleid beschikbaar is. GitHub-36425
  • De query cart retourneert nu een selected_shipping_method -waarde die overeenkomt met een van de available_shipping_methods -carrier en -methodencodes. Eerder, toen één van de geselecteerde verschepingsmethodes een onderstrepingsteken bevatte, waren deze drager/methodecodes mismatch. GitHub-36606
  • De setShippingAddressesOnCart -mutatie genereert niet langer een fout wanneer de tweede waarde in de array op straat null is. Eerder werd deze uitzondering gegenereerd: The address failed to save. Verify the address and try again . GitHub-35160

Sitemap

  • De XML-sitemap werkt nu zoals verwacht in een implementatie met meerdere verdiepingen. Eerder bevatten de sitemaps niet de toegewezen standaardpagina's voor elke winkel. GitHub-35001
  • Handelaars kunnen nu een product maken en opslaan wanneer website id != 1 en de modus voor één winkel zijn ingeschakeld. Eerder is het opslaan mislukt met het volgende bericht: SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails . GitHub-35009

Belasting

  • De facturen tonen nu correct subtotal wanneer de belastingen worden gevormd en FPT wordt toegelaten.
  • Magento Open Source geeft nu de juiste waarde voor de Regular Price -waarde weer wanneer een aangepaste optie wordt geselecteerd voor een product met een Special Price -waarde wanneer Price Display Settings is ingesteld op inclusief btw.
  • Belasting wordt nu opgenomen zoals wordt verwacht in de verzendprijs van de betalingsworkflow, zoals opgegeven in de configuratie-instellingen.
  • De reactiewaarde cart query applied_taxes bevat nu alle afzonderlijke belastingregels zoals verwacht. Eerder, keerde het de totale belastingwaarde terug toen de veelvoudige belastingregels werden gevormd.
  • Het pictogram voor samenvouwen/uitvouwen voor de sectie Additional Settings tijdens het maken van belastingregels werkt nu zoals verwacht. Eerder werkte alleen het pictogram voor uitvouwen. GitHub-37922
  • U kunt de waarde van Land en regio van het Tarief van de Tarief nu uitgeven van de de Edit pagina van de Regel van de Belasting zoals verwacht. Eerder zijn bewerkingen die op die pagina zijn aangebracht, niet opgeslagen.
  • Het belastingbedrag in het taxatiegebied van het winkelwagentje wordt nu vernieuwd zoals verwacht wanneer de verzendmethode wordt bijgewerkt. Eerder werd het belastingtarief niet bijgewerkt nadat een winkelier tijdens de afrekening van land veranderde.
  • De tax class -waarde voor nieuw gemaakte eenvoudige producten wordt nu ingesteld op de waarde van het bovenliggende product wanneer nieuwe variaties van een bestaand configureerbaar product in het bereik van de winkelweergave worden gemaakt. Eerder was deze waarde ingesteld op Geen. Als gevolg daarvan werd geen belasting toegevoegd aan deze producten in de winkelwagen en werden de afnemers te weinig belasting geheven. GitHub-37180

Testen

  • De test van AdminCreateOrderWithVirtualProductFromDefaultSourceWithBackorders is verbeterd en er zijn fouten opgetreden die het gevolg zijn van een voortijdige voltooiing van het e-mailveld.
  • StorefrontVerifyProductAfterPartialReindexOnSeveralWebsitesTest is vernieuwd om de betrouwbaarheid te verbeteren. GitHub-38359
  • Probleem verholpen met de AdminSimpleProductwithTextandVisualSwatch -test door een extra stap in te voeren die expliciet de kenmerken instelt die in de zoekopdracht moeten worden gebruikt.
  • Typen gecorrigeerd in de eenheidstest van SortbyTest . GitHub-37792
  • Verwijzingen naar niet-bestaande klassen in eenheidstests zijn verwijderd. GitHub-37636
  • De test van AdminCreateOrderWithVirtualProductFromDefaultSourceWithBackorders is verbeterd en er zijn fouten opgetreden die het gevolg zijn van een voortijdige voltooiing van het e-mailveld.
  • Refactored Magento\GraphQl\Catalog\ProductSearchTest::testFilterProductsBySingleCategoryId test om willekeurige categorievolgorde af te handelen in products queryantwoorden.
  • Met de \Magento\Test\Integrity\Di\CompilerTest::testConstructorIntegrity -test worden nu alle PHP-klassen gecontroleerd van modules die zijn geregistreerd door ComponentRegistrar() .
  • Prestatieproblemen met grote arrays in TableNameSniff zijn opgelost.
  • CollectionTest::testGetDateRangeFirstPart() is nu verantwoordelijk voor zomertijd.

UI-framework

  • Het kenmerk crossorigin is toegevoegd aan de elementen linkTypes for HEAD . GitHub-32509
  • De uploader voor afbeeldingen werkt nu zoals u had verwacht in dynamische rijen. Afbeeldingen worden nu correct geüpload wanneer ze als een multinationale array worden verzonden. GitHub-37957
  • Stijlen voor het uploaden van bestanden worden niet meer gedupliceerd in het thema Luma. GitHub-32373
  • Straatvelden op het adresformulier voor klantenaccounts van het veld straat worden nu correct opgeslagen. Deze velden worden nu op de juiste wijze gesorteerd door de opgegeven toetsen in het formulier. GitHub-37973
  • De Cumulatieve waarden van de Verschuiving van de Lay-out (CLS) zijn verbeterd voor productdetailpagina's. (Deze metrische waarde bepaalt de visuele stabiliteit van paginalay-outs.) GitHub-35410
  • Verbeterde berichten over fouten die optreden tijdens het renderen van sjablonen. Magento Open Source geeft nu een informatief bericht weer. Eerder gaf de Magento Open Source een lek in de HTML te zien toen er een PHP fout optrad.
  • Aangepaste klantkenmerken (type File attached ) werken nu goed met afbeeldingen die zijn verwijderd en vervolgens worden geüpload. Eerder konden geüploade aangepaste kenmerken, daarna verwijderd en opnieuw geüpload niet uit de storefront worden opgeslagen.
  • Correctie van een syntaxisfout in het kalendersjabloonbestand. GitHub-37725
  • Gebruikers met beheerdersrechten kunnen nu het winkellogo wijzigen als de modus Eén winkel is ingeschakeld. Eerder werd het standaardfallback-logo weergegeven door de Magento Open Source. GitHub-35952
  • De configuratiewaarden van Mixins zijn niet meer leeg, en de mixins van jQuery werken nu ongeacht ladingspositie. Eerder werden jQuery-mixins niet consistent in verschillende browsers geladen.
  • Wachtwoorden worden nu op de verwachte manier weergegeven wanneer het selectievakje Show Password op de aanmeldingspagina actief is.
  • Magento Open Source geeft nu correcte prijzen voor vaste bundelproducten met speciale prijzen.
  • De koppeling naar de GitHub Issues-pagina met vermeldingen in het sjabloonbestand voor de voettekst van de winkel is bijgewerkt. GitHub-37214
  • De widget Onlangs bekeken geeft nu de juiste BTW weer in gegroepeerde productprijzen. GitHub-35881
  • Admin-gebruikers kunnen nu naar behoren de aanpasbare opties voor het eenvoudige product slepen. GitHub-36051
  • De volgorde van de kenmerktypen van het kenmerk Dropdown komt nu overeen met de volgorde van de afbeeldingen op de configureerbare productpagina. GitHub-37285
  • Systeemberichten worden nu sneller geladen. Alleen de berichten die worden weergegeven, worden geladen. Eerder, werden alle berichten geladen van het gegevensbestand, dat tijdrovend was.
  • Als u het knooppunt breadcrumbs verwijdert door remove=true in te stellen via de XML-layout, wordt de paginatitel op de categoriepagina niet langer verwijderd. Eerder werd door het verwijderen van broodkruimels de paginatitel uit de categoriepagina verwijderd.
  • Het registratieformulier voor klanten wordt nu naar behoren geladen wanneer het meerdere klantkenmerken bevat. Eerder maakte Magento Open Source de volgende uitzondering: [2023-03-05T05:57:40.032602+00:00] report.CRITICAL: Exception: Deprecated Functionality: explode(): Passing null to parameter #2 ($string) of type string is deprecated in /magento2ee/app/code/Magento/CustomAttributeManagement/Block/Form/Renderer/Multiselect.php on line 53 in /lib/internal/Magento/Framework/App/ErrorHandler.php:62 . GitHub-37189
  • Welkomstberichten die enkele aanhalingstekens bevatten, worden nu op de juiste wijze weergegeven op de winkelserver zonder consolefouten. Eerder, als een welkomstbericht één enkel aanhalingsteken bevatte, dan werd het welkomstbericht niet geladen tijdens storefront het teruggeven. Magento Open Source ook weergegeven consolefouten.
  • Magento Open Source genereert niet langer een fout wanneer u de weergave snel probeert te wijzigen tussen de geschiedenis van opmerkingen en Retourneert op de bestelpagina Admin. Eerder werd deze algemene fout door de Magento Open Source weergegeven: A technical problem with the server created an error .
  • Admin-gebruikers met bevoegdheden die beperkt zijn tot één website, kunnen nu productkenmerken die specifiek zijn voor de website en zijn ingesteld op een all stores view bereik bijwerken.
  • De zoomwidget wordt nu geladen zoals op de productpagina wordt verwacht.
  • Aanpasbare opties voor meerdere regels worden nu correct weergegeven in factuur-, verzending- en creditnota memo PDF-documenten. Eerder werd tekst met meerdere regels voorafgegaan door een onverwacht pagina-einde en als de tekst de pagina overschrijdt, werd de tekst afgekapt.
  • Admin-gebruikers kunnen nu een nieuw klantadres van de beheerder toevoegen wanneer die klant is gemaakt voor een andere website waarvan de winkel-id niet overeenkomt met de website-id. Eerder werd dit pop-upbericht weergegeven door de Magento Open Source: Something went wrong . GitHub-36582
  • Foutberichten die zijn gekoppeld aan het verzenden van opmerkingen op de pagina met orderdetails, zijn nu informatiever. Eerder, toen een verkoopster Submit comment klikte zonder of ordestatus te veranderen of tekst in het commentaargebied in te gaan, toonde de Magento Open Source dit bericht: The comment is missing. Enter and try again.
  • Het kalenderpictogram wordt nu zoals verwacht weergegeven in de datumbereikvelden in Admin Marketing > Cart Price Rules nadat een datum voor één veld is geselecteerd. Eerder, nadat u een datum voor één gebied selecteerde, werd het kalenderpictogram niet meer getoond op andere gebieden, en de Magento Open Source toonde placeholder tekst. GitHub-36499
  • Registratieformulieren van de klant met meerdere geselecteerde velden worden nu correct geladen. Eerder werd dit formulier niet geladen wanneer het multiselect-velden bevatte en de volgende fout werd geactiveerd: report.CRITICAL: Exception: Deprecated Functionality: explode(): Passing null to parameter #2 ($string) of type string is deprecated in /magento2ee/app/code/Magento/CustomAttributeManagement/Block/Form/Renderer/Multiselect.php on line 53 in /lib/internal/Magento/Framework/App/ErrorHandler.php:62 . GitHub-37189
  • Wanneer u op een videominiatuur in de modus Volledig scherm van de productgalerie klikt, wordt de video nu naar behoren weergegeven. Eerder werd de video niet weergegeven en gaf de browserconsole een JavaScript-fout weer. GitHub-36456
  • Een variabele toegevoegd aan de copyrightregel die elk jaar automatisch wordt bijgewerkt. GitHub-36776
  • De schuifregelaar voor de afbeelding op de productpagina werkt nu zoals u had verwacht in de mobiele weergave. Eerder werd alleen de eerste afbeelding weergegeven. GitHub-37232

URL herschrijft

  • URL herschrijft wordt nu geproduceerd gebaseerd op store-level zichtconfiguratie in multi-store plaatsingen. Eerder, werden herschreven URL niet geproduceerd voor niet-gebrek opslag toen productzicht aan niet zichtbaar onder het standaardopslagwerkingsgebied werd geplaatst.
  • Category::getUrl() haalt niet langer een omleiding van 301. GitHub-38152
  • Magento Open Source genereert niet langer product-URL herschrijft voor hoofdcategorieën en voor producten die zijn ingesteld op Not Visible Individually in instellingen voor meerdere winkels wanneer ontbrekende URL-herschrijvingen voor aangepaste winkels worden gegenereerd.
  • Canonieke URL-tags geven nu de wijzigingen weer die worden verwacht nadat de eigenschap Categorie-URL-sleutel is bijgewerkt. Eerder werd de verouderde categorie-URL gebruikt, die onmiddellijk leidde tot de omleiding naar de nieuwe URL.
  • Herschrijvingen van de product-URL van de categorie worden nu gegenereerd zoals u verwacht voor alle winkelweergaven wanneer een product aan een categorie wordt toegevoegd. GitHub-32910
  • De Magento Open Source genereert niet meer een fout wanneer u probeert om tot 301/302 te leiden voor een product URL wanneer categorie/product URL herschrijft wordt toegelaten. Wanneer een product wordt gemaakt en aan een categorie wordt toegewezen, wordt automatisch opnieuw geschreven URL: voor de directe URL en voor het product door het categoriepad. Wanneer een nieuwe product-URL wordt herschreven, worden de correlaties tussen product, categorie en winkel gecontroleerd. Deze controle is nu gebaseerd op gecorreleerde entiteitseigenschappen (categorie en product). Eerder werd deze controle uitgevoerd op bestaande URL-herschrijvingen.
  • De categorie-URL wordt nu voor alle opslagweergaven gegenereerd wanneer een nieuwe categorie uit een CSV-bestand wordt geïmporteerd.
  • Het achtervoegsel van de product-URL en de achtervoegselconfiguraties van de categorie-URL komen nu overeen met de achtervoegsels in de tabel url_rewrite . Eerder waren er rasvoorwaarden bij het bijwerken van URL-achtervoegselconfiguraties en kwamen de geconfigureerde URL-achtervoegsels en de tabel url_rewrite niet overeen.
  • Met Magento Open Source wordt de categoriestructuur nu op alle niveaus gerenderd wanneer u een categorie-URL maakt die opnieuw wordt geschreven. Eerder werden alleen de eerste drie niveaus van categorieën weergegeven. GitHub-36973
  • Herschrijvingen van categorie-URL's zijn nu aanwezig in het CSV-bestand tijdens het importeren van een nieuwe categorie.
  • CMS-pagina's voor meerdere winkels zonder URL-herschrijving worden nu doorgestuurd zoals u had verwacht. Eerder werden aangevraagde CMS-pagina's voor meerdere winkels zonder URL-herschrijving omgeleid naar de homepage van de winkel, maar de originele CMS-pagina's werden niet omgeleid.

Web API-framework

  • Magento Open Source geeft niet langer een Integration not secure waarschuwing weer in Beheer System > Extensions > Integrations wanneer de velden Callback URL en Identity link URL leeg zijn. GitHub-36407
  • De extensiekenmerken taxes , itemized_taxes en additional_itemized_taxes zijn toegevoegd aan Magento\Sales\Api\Data\OrderInterface . Deze attributen staan u toe om toegepaste belastingen met de vraag van de TerugSTEL van de Orde te bewaren.
  • De REST API van de Prijsverhoging van de Rij steunt nu decimale hoeveelheden. Eerder stond deze API decimale hoeveelheden niet toe, zelfs niet wanneer de instelling Use Decimal Quantity was ingeschakeld.
  • Het eindpunt REST V1/orders/{id}/comments verandert niet meer de status van een orde wanneer het proberen om een commentaar aan de status van een hangende orde toe te voegen. Er treedt nu een informatieve fout op. Eerder, veranderde dit eindpunt de ordestatus toen het toevoegen van een commentaar.
  • Het eindpunt REST API GET en POST V1/products/attributes retourneert niet langer dezelfde waarde voor het kenmerk is_filterable voor de opties Filterable(with results) en Filterable(no results) van de optie Use in Layered Navigation . Eerder gaf dit eindpunt dezelfde waarde omdat de eigenschap is_filterable attribute van het type Boolean was, dat het instellen van deze eigenschap op Filterable(no results) niet toestaat. GitHub-37979
  • Het ontbrekende media_gallery_entries veld is toegevoegd aan het REST V1/configurable-products/sku/children -eindpunt. Eerder ontbrak deze functie de code die nodig was om media_gallery_entries op te slaan en weer te geven. GitHub-37607
  • De REST-methode V1/carts/mine/estimate-shipping-methods valideert nu alle niveaus van gegevens in het ladingsveld en retourneert een 400 HTTP-code voor ongeldige gegevens. Eerder werd alleen het eerste niveau van de API-lading gevalideerd en als ongeldige gegevens werden geretourneerd op niet-gevalideerde niveaus van de lading, gaf de Magento Open Source een 500-statuscode.
  • Asynchrone bulksgewijs REST API-bewerkingen om producten met laagprijzen en verschillende kenmerksets bij te werken zijn nu voltooid. Eerder konden producten met verschillende kenmerksets niet op deze manier worden bijgewerkt en werd deze fout weergegeven in de Magento Open Source: The product was unable to be saved. Please try again .
  • Het POST /V1/products/tier-prices eindpunt keert nu een informatievere foutenmelding terug wanneer een ongeldige naam van de klantengroep tijdens de verwezenlijking van de rijprijs wordt gebruikt. Eerder heeft Magento Open Source een fout als deze geretourneerd: Notice: Undefined index: XXXXX in ~/public_html/vendor/magento/module-catalog/Model/Product/Price/Validation/TierPriceValidator.php on line 474" . GitHub-36431
  • U kunt nu een geoorloofde asynchrone bulk-API-aanvraag uitvoeren om klanten met een niet-standaard groep-id te maken. Eerder, stellen deze verzoeken groep ID aan de standaardwaarde terug.
  • Klanten die zijn gemaakt met de Bulk-API ontvangen nu e-mails met klantenregistratie in de taal die is geconfigureerd in de door hen toegewezen website. Eerder werden alle e-mailberichten verzonden naar de standaardlandinstelling, niet naar de landinstelling van de website waaraan de klant is toegewezen.
  • De aanroep van POST V1/guest-carts verzendt geen gastorders meer wanneer Allow Guest Checkout is uitgeschakeld.
  • Magento Open Source retourneert nu het content -kenmerk (base64-afbeeldingscode) in de GET V1/products/sku/media -API-reacties voor productmedia. Het kenmerk content is niet eerder in de reactie opgenomen.

Systeemvereisten

Onze technologiestapel is gebaseerd op PHP en MySQL. Voor meer informatie, zie Vereisten van het Systeem.

Installatie- en upgradeinstructies

U kunt Magento Open Source 2.4.7 installeren gebruikend Composer.

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