Verbeterde beveiliging

Deze release bevat 20 verbeteringen op het gebied van beveiliging en platformbeveiliging. Deze beveiligingscorrectie is teruggezet naar Magento Open Source 2.4.4-p1 en Magento Open Source 2.3.7-p4.

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

Zie Bulletin van de Veiligheid van Adobevoor de recentste bespreking van deze vaste kwesties.

Aanvullende beveiligingsverbeteringen

De verbeteringen van de veiligheid voor deze versie verbeteren naleving van recentste veiligheids beste praktijken, die omvatten:

  • De ondersteuning voor reCAPTCHA is toegevoegd aan de formulieren Delen van wenslijsten, Nieuwe klantenaccount maken en Cadeaukaart.

  • ACL de middelen zijn toegevoegd aan Inventaris.

  • De beveiliging van het voorraadsjabloon is verbeterd.

  • Het filter MaliciousCode is bijgewerkt en gebruikt nu de HtmlPurifier -bibliotheek.

Verbeteringen aan platform

Magento Open Source 2.4.5 wordt nu ondersteund

  • Composer 2.2

  • TinyMCE (5.10.2). Eerdere versies van TinyMCE (v5.9.2 of eerder) stonden willekeurige JavaScript-uitvoering toe wanneer een speciaal gemaakte URL of een afbeelding met een speciaal gemaakte URL werd bijgewerkt.

  • jQueryUI (1.13.1)

  • PHPStan (^1.5.7 met beperking) GitHub-35315

Het schema voor DHL-integratie is bijgewerkt van v6.0 tot v6.2. Deze upgrade leidt niet tot een wijziging in het productgedrag.

De verouderde bibliotheken van JavaScript zijn bijgewerkt aan hun recentste versies, en verouderde gebiedsdelen zijn verwijderd. Deze wijzigingen zijn compatibel met oudere versies.

Updates voor compositieafhankelijkheid

De volgende composer-afhankelijkheden zijn met beperkingen bijgewerkt naar de nieuwste versies:

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

De afhankelijkheden laminas/laminas-session , laminas/laminas-text en laminas/laminas-view zijn verwijderd.

Andere upgrades en vervangingen

  • Het schema voor DHL-integratie is bijgewerkt van v6.0 naar v6.2.

  • De standaard gateway-URL voor verzending naar USPS is bijgewerkt en gebruikt nu https in plaats van http .

  • De Froogaloop -bibliotheek is vervangen door de Vimeo Player.js -bibliotheek (2.16.4).

  • De grunt-eslint (NPM) bibliotheek is bijgewerkt naar de nieuwste versie.

  • De bibliotheken van jQuery Storage zijn vervangen door julien-maurel/js-storage .

  • De php-cs-fixer - en phpcs statische codeanalyse zijn nu compatibel met PHP 8.x.

  • glob.js afhankelijkheid (bijgewerkt met beperking tot ~7.2.0)

  • serve-static.js afhankelijkheid (bijgewerkt met beperking ~1.14.2)

  • underscore.js Afhankelijkheid (NPM) (1.14.2)

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

  • De bibliotheek jquery/jquery-cookie is vervangen door js-cookie/js-cookie .

  • De bibliotheken jarallax.js en jaralax-video.js zijn bijgewerkt en gebruiken nu de nieuwste versie van de Vimeo REST API.

Toegankelijkheidsupdates

De focus van deze release was op het creëren van een storefront experience op Venia (PWA) die waarneembaarder, opereerbaar, begrijpelijker en robuuster is. Deze verbeteringen zijn onder meer:

  • Samenvattingsinformatie over zoekresultaten wordt nu aangekondigd voor schermlezers
  • Schermlezers worden nu op de hoogte gesteld wanneer een nieuwe paginaweergave wordt geladen
  • De toegankelijkheid van contrast en toetsenbord is verbeterd

Google Analytics

Google heeft de tracking- en integratiemechanismen van AdWords en Analytics in webtoepassingen bijgewerkt via integratie met GTag. Deze integratie van Google-functionaliteit in websitepagina's biedt mogelijkheden voor het bijhouden en beheren van inhoud via Google Services. Adobe Commerce beschikt over een reeks ingebouwde modules, waaronder Google AdWords, Analytics, Optimizer en TagManager, die de oude API gebruiken voor integratie met Google-services. In deze release hebben we deze integratie opnieuw geïmplementeerd met behulp van de GTag-aanpak. ​ Zie migreren van analytics.js aan gtag.js (Universele Analytics).

GraphQL

Verbeterde GraphQL-prestaties zijn onder andere:

  • Ontwikkelaars en beheerders ervaren een snellere heropbouw van het uniforme GraphQL-schema voor de winkel bij de implementatie of bij het wijzigen van kenmerken in de productie. De gebruikers ervaren ook beduidend snellere paginading wanneer het schema van GraphQL om het even welke reden moet worden herbouwd.

  • Toegevoegde mogelijkheid om de vervaldatum/tijd van de machtigingstoken te gebruiken via JSON Web Tokens (JWT) in de GraphQL API.

  • Met de opdracht bin/magento config:set graphql/session/disable 1 kunnen handelaren het maken van sessiecookies voor alle GraphQL-bewerkingen volledig uitschakelen. Standaard maakt de toepassing Open Source deze cookies en wordt deze afhankelijk gemaakt van de autorisatie, wat van invloed is op de prestaties. We raden u aan tokens te gebruiken als de enige vorm van autorisatie voor GraphQL-aanvragen. We raden u niet aan sessiecookies alleen of in combinatie met machtigingstokens te gebruiken. Zie GraphQL Vergunning.

  • Sessiecookies worden nu alleen gestart in GraphQL-bewerkingen die klasseproxy's gebruiken als dat nodig is.

  • Het gebruik van sessies is verwijderd uit http header-processors in GraphQL, zoals winkel, klant of valuta.

Zie de Gids van de Ontwikkelaar van GraphQLvoor details op deze verhogingen.

Inventaris

De beveiliging van het voorraadsjabloon is verbeterd.

Page Builder

Page Builder v.1.7.2 is compatibel met Magento Open Source 2.4.5.

De kolomlay-out van Page Builder bevat de volgende verbeteringen:

  • Kolommen worden nu weergegeven, zodat gebruikers de kolominstellingen in de winkel kunnen bepalen.

  • Kolomgrootte wordt nu ondersteund voor terugloop die wordt geactiveerd door gebruikershandelingen.

Betalingen

Apple Pay is nu beschikbaar voor alle handelaren die implementaties uitvoeren met gebruik van Betalingsservices. Deze betalingsmethode verplicht kopers niet hun creditcardgegevens in te voeren. Apple Pay is beschikbaar op de pagina met productdetails, de miniwinkelwagentje, de winkelwagentje en de afrekenworkflow. Merchants kunnen deze functie in- en uitschakelen.

PayPal

  • Handelaren in Spanje en Italië kunnen nu PayPal Later aanbieden aan kopers.

  • Voorvertoningen van de knoppen PayPal, Credit en Pay Later zijn nu beschikbaar in Beheer voor de pagina's Afrekenen, Miniaturen, Kaart en Product. De voorvertoningen laten zien hoe deze knoppen eruitzien wanneer ze worden ingeschakeld en weergegeven op de winkelachtergrond.

Braintree

  • Braintree heeft de integratie van de KOUNT-fraudebescherming stopgezet. Het is verwijderd uit de Magento Open Source-codebase.

  • verzoek altijd 3DS optie is toegevoegd aan Admin.

PWA Studio

PWA Studio v.12.5.x is compatibel met Magento Open Source 2.4.5.

De nieuwe functies voor deze release zijn onder andere:

  • Shopper-gedragsgegevens worden verzameld op PWA Studio-winkelserver voor webanalyseservices. Handelaars kunnen nu een abonnement nemen op deze gebeurtenissen en deze naar wens uitbreiden.

  • Merchants kunnen nu een service selecteren die u wilt implementeren in het beheerprogramma (Google Tag Manager).

Voor informatie over verhogingen en insectenmoeilijke situaties, zie versies van PWA Studio. Zie de verenigbaarheid van de Versievoor een lijst van de versies van PWA Studio en hun compatibele kernversies van Magento Open Source.

Opgeloste problemen

We hebben honderden problemen opgelost in de Magento Open Source 2.4.5-kerncode.

Installatie, upgrade, implementatie

  • U kunt de naam van een gegevenspatch nu wijzigen en de oude klassenaam als een alias toevoegen in de databasetabel van patch_list . Magento Open Source controleert nu of er al gegevenspatchaliassen in de database bestonden voordat de patch werd toegepast. Eerder heeft de applicatie Open Source onder deze omstandigheden een fout veroorzaakt.
  • Magento Open Source genereert niet langer een uitzondering wanneer u de Admin-URL probeert te wijzigen in een aangepaste URL vanuit de beheerfunctie. Eerder kon u zich niet aanmelden nadat u de URL voor beheer had gewijzigd. GitHub-35416
  • De handelaren kunnen nu met succes van een plaatsing van Magento Open Source 2.4.2 met Klarna aan Magento Open Source 2.4.3 bevorderen. GitHub-33760
  • Het pad naar Magento Open Source Analytics is niet meer gecodeerd. Eerder leidde dit hardcoded pad tot conflicten wanneer meerdere Magento Open Source-instanties op één server waren geïnstalleerd. GitHub-29373

Toegankelijkheid

  • De Shopping zak knoop verstrekt nu een programmatic of tekstuele aanwijzing van zijn staat. Gebruikers van schermlezers krijgen te horen dat als u op deze knop klikt, andere inhoud wordt uitgevouwen of dat de bijbehorende inhoud wordt uitgevouwen of samengevouwen. Eerder gaf deze knop geen programmeerbare of tekstuele indicatie van de status.
  • Tekstelementen of tekstafbeeldingen van de optie Betalingsinformatie voldoen nu aan de WCAG 2.0-vereiste minimale kleurcontrastverhouding van 4,5:1 voor standaardtekst van 18 pt (24 px) of 14 pt (19 px) als deze is opgebouwd. Eerder voldeden zij niet aan de verwachte contrastverhouding.
  • het boek van het Adres > Communicatie > de informatie van de Rekening de indicatoren van de douanesfocus verstrekken nu een contrastverhouding van minstens 3:1 tegen de achtergrondkleur.
  • de Filter en 3} knoopteksten van de Soort {ontmoeten nu WCAG 2.0 vereiste minimumverhouding van het kleurencontrast van 4.5:1 voor standaardteksten van 18pt (24px) of 14pt (19px) als bolded. Eerder voldeden de navigatieknoppen voor carrousels niet aan deze minimumcontrastvereisten.
  • Schermlezers kondigen het woord "Venia" slechts eenmaal aan wanneer ze naar de kop- en voetteksten van Venia navigeren. Eerder werd hetzelfde woord twee keer achtereenvolgens bekendgemaakt.
  • Knoppen die dropdowns veroorzaken verstrekken nu informatie aan het schermlezers die op hun uitgevouwen of doen ineenstorten staat en toegankelijke namen wijzen.
  • Gebruikers van schermlezers worden op de hoogte gesteld wanneer een nieuwe paginaweergave wordt weergegeven. Eerder, toen een paginatitel veranderde, werd de titelverandering niet aangekondigd.

Adobe Stock

  • Gebruikers kunnen zich nu met succes afmelden bij Adobe Stock.

Bundelproducten

  • U kunt nu het eindpunt van PUT /V1/products gebruiken om de productprijskenmerken voor een specifieke website bij te werken. Eerder, als sommige productattributen voor een specifieke opslagmening met voeten werden getreden, kon u geen prijsattribuut voor dat product in de zelfde archiefmening bijwerken.
  • Magento Open Source berekent nu correct het kromme totaal voor een bundelproduct wanneer de Subselect regel van het Product wordt toegepast.

Cache

  • De cache van de volledige pagina wordt niet meer weergegeven als uitgeschakeld in het beheerprogramma wanneer de Magento Open Source-cache wordt leeggemaakt en use_stale_cache is ingeschakeld.
  • New Relic-implementatiemarkeringen werken nu naar behoren wanneer de cache wordt leeggemaakt. GitHub-32649

Winkelwagentje en uitchecken

  • De pop-up adreszoekopdracht in de factureringsstap van de uitcheckworkflow veroorzaakt niet langer DOM-fouten.
  • De addProductsToCart -mutatie werkt nu correct met meerdere producten. Eerder, keerde deze vraag het eerste product met nauwkeurige subtotal terug, maar keerde subtotal 0 voor andere producten terug.
  • De uitzonderingen van de toestemming worden nu behandeld voor beperkte producten die door SKU worden toegevoegd. Klanten krijgen nu een geschikt bericht op de winkel en het veld Aantal in de tabel met fouten is uitgeschakeld. Eerder gaf de applicationOpen Source een uitzondering als deze: There has been an error processing your request .
  • De SQL vraag die beïnvloede citaten bijwerkt nadat het onbruikbaar maken van een de prijsregel van de kar is geoptimaliseerd om het sluiten van de volledige citaatlijst te vermijden.
  • Klanten die wereldwijd accounts delen, hoeven zich niet meer opnieuw aan te melden bij een secundaire website tijdens een implementatie op meerdere sites wanneer uitchecken door gasten is uitgeschakeld. De gegevens van de klant worden nu geladen wanneer de klant naar het subdomein navigeert. De winkelier wordt niet meer gevraagd zich opnieuw aan te melden en de vorige inhoud van het winkelwagentje wordt weergegeven.
  • De waarden van het adres dropdown in het controlewerkschema veranderen niet meer voor de resterende punten in een citaat wanneer één enkel punt van het kwantitatieve adres in een multi-adrescontrole wordt verwijderd. Eerder, toen een product uit een citaat tijdens multi-adrescontrole werd verwijderd, veranderde de adresdropdown waarde in gebrek voor alle producten.
  • De query cart retourneert niet langer null-reacties wanneer een product uit voorraad is. Er is een nieuw errors -element met het foutbericht toegevoegd aan de reactie. Wanneer u eerder een query met een product uit de wachtrij uitvoerde, gaf de toepassing Open Source een null -waarde weer onder de sectie items in de reactie. Zie kartvraag.
  • Verzendmethoden zijn nu beschikbaar zoals verwacht wanneer een gast een account maakt nadat hij een product aan zijn winkelwagentje heeft toegevoegd voordat hij verdergaat met het afrekenen. Eerder waren er geen verzendmethoden beschikbaar tijdens het afrekenen wanneer een gast een product aan het winkelwagentje toevoegde voordat een account werd gemaakt. Nadat u andere producten aan de winkelwagen had toegevoegd, werden verzendmethoden beschikbaar.
  • De klanten kunnen producten aan hun wortels nu toevoegen wanneer geen opties op het toestaan Landen gebied zijn geselecteerd.
  • De inhoud van het kunstwerk en login status worden nu opnieuw geladen zoals verwacht na een zittingstijden uit wanneer Persistentie aan ja toelaat. GitHub-35182
  • De subtotalen van de mini-winkelwagen worden nu correct bijgewerkt wanneer een winkelier van de verzendpagina naar de winkelpagina in de workflow voor het uitchecken navigeert voor een bestelling met meerdere verzendadressen. Eerder was het subtotaal verdubbeld.
  • De mini kart toont nu eerder toegevoegde producten na een zittingsonderbreking wanneer Persistence wordt toegelaten. GitHub-35183
  • Merchants kunnen nu een creditmemo tot stand brengen waarin Verzending terugbetalen (incl. Belasting) wordt geplaatst aan -0.01 en kan dit bedrag aan 0 nu plaatsen. Voorheen kon de creditnota niet onder deze voorwaarden worden gecreëerd.

Winkelprijsregel

  • Het kenmerkbereik van Parent Only wordt nu op de juiste wijze gebruikt in de voorwaarde van de Regel van het winkelwagentje.

Catalogus

  • De URL-sleutels van het product blijven nu ongewijzigd wanneer u de productnaam via PUT /V1/products/ bijwerkt voor een winkelweergave. Eerder werd een nieuwe URL-sleutel gegenereerd op basis van de nieuwe productnaam en toegewezen aan het product, die de URL-sleutel in die winkelweergave overtrok.
  • Wanneer u een product aan een categorie toevoegt vanuit de productwidget van Page Builder die is ingesteld op de carrouselmodus, wordt de pagina niet langer opnieuw geladen.
  • De producten die aan worden geplaatst niet afzonderlijk verschijnen niet meer in catalogus Geavanceerde resultaten van het Onderzoek.
  • Dynamische bundelkenmerken worden nu op de juiste wijze bijgewerkt op de pagina voor het bijwerken van kenmerken van massa. Eerder, bleef het Dynamische SKU attribuut aan ja plaatsen alhoewel zij op de pagina van de Update van de Massa werden onbruikbaar gemaakt.
  • Catalogusregels worden nu correct toegepast met behulp van incrementele indexen in plaats van een volledige nieuwe index.
  • U kunt nu met succes schakelen tussen de lijst- en rasterweergave van productlijsten met meerdere pagina's. Als u eerder naar de laatste pagina van een productlijstweergave met meerdere pagina's navigeerde voordat u overschakelde naar de rasterweergave, gaf de toepassing Open Source de volgende fout weer: Unfortunately there are no products in this category on our website currently .
  • In de rapporten in het handelingenlogboek van Admin worden nu bijgewerkte product-id's en bijgewerkte statusinformatie weergegeven zoals u had verwacht.
  • Triggers worden nu teruggezet naar de verwachte waarde in de tabel catalogrule_product_price nadat de index volledig is gewijzigd. Eerder werden triggers verwijderd uit de tabel catalogrule_product_price nadat een catalogrule_rule - of catalogrule_product -volledige herindex was verkregen.
  • Categorieregels die worden gebruikt om producten aan categorieën toe te wijzen, veranderen niet meer willekeurig.
  • Categorieën kunnen niet meer globaal worden bijgewerkt door een beheerder met beperkte toegang. Eerder, toen de veelvoudige websites de zelfde categorie maar verschillende producten gebruikten, en een beheerder met toestemming tot één opslag veranderde producten in de categorie, veranderde de productselectie ook voor andere opslag.
  • Op de pagina met productdetails wordt nu de juiste prijs weergegeven wanneer een andere valuta dan de standaardvaluta voor een opgegeven landinstelling wordt gebruikt. Eerder werden getallen niet gelokaliseerd zoals in de winkel werd verwacht.
  • Dezelfde foutmelding wordt nu weergegeven door de API en op de winkel wanneer wordt geprobeerd de laagprijzen op te halen van een product met dubbele records. Eerder gaf PUT /V1/products/tier-prices een onjuist foutbericht.
  • Magento Open Source geeft nu berichten met validatiefouten wanneer u een product-URL-sleutel probeert toe te voegen met een afbreekstreepje. Informatieve knopinfo is ook beschikbaar.
  • Het nieuwe veld ConfigurableWishlistItem.configured_variant heeft het veld ConfigurableWishlistItem.child_sku vervangen. Het laatstgenoemde gebied teweegbracht een interne fout teweeg wanneer een klant verlanglijst een niet-gevormd configureerbaar product bevatte.
  • URL-herboekingen worden nu alleen gegenereerd voor de geselecteerde winkels tijdens de update van het massakenmerk om de zichtbaarheid van het product te wijzigen. Eerder, leidde de update van het massakenmerk tot een URL die voor de verkeerde opslag herschrijft.
  • Wanneer de instelling Synchronize widget products with backend storage is ingeschakeld, voegt de toepassing Open Source onlangs gegevens over weergaveproducten toe aan de databasetabel van catalog_product_frontend_action . De klant- of bezoekersidentiteitskaart wordt opgenomen wanneer u records toevoegt. De sectie recently_viewed_product in het antwoord is nu leeg als de klant-id en de bezoeker-id null zijn. Als gevolg hiervan kan de toepassing Open Source onlangs weergegeven producten correct filteren op basis van de klant- of bezoeker-id wanneer het customer/section/load Ajax-verzoek wordt verzonden. Eerder bevatte de reactie alle gegevens die beschikbaar waren in de databasetabel van catalog_product_frontend_action omdat er geen controle was op een lege klant- of bezoekersidentiteitskaart.
  • Beheerders kunnen nu configureerbare productopties in een winkelwagentje wijzigen vanuit het deelvenster Admin-dia. Eerder werkte het deelvenster Dia niet correct.
  • De paginacache wordt nu gewist zoals u had verwacht voor het configureerbare bovenliggende product wanneer wijzigingen in een onderliggend product worden opgeslagen. Eerder, omdat het geheime voorgeheugen niet werd ontruimd, werden de veranderingen niet geselecteerd op de de productpagina van de storefrontconfiguratie. GitHub-34508
  • Productlijsten worden nu correct weergegeven in de Admin. Eerder werd de productlijst niet gerenderd en gaf Magento Open Source de volgende fout weer: Item (Magento\Catalog\Model\Product\Interceptor) with the same ID "<ID>" already exists . GitHub-33145
  • De prijzen van het product zijn nu het zelfde op de pagina van het productdetail en in archiefonderzoek in multi-store plaatsingen na de veranderingen van het Toepassingsgebied van de Prijs van de Catalogus van website aan globaal. Eerder, toonde de pagina van de Resultaten van het Onderzoek van de Catalogus de globale prijs, en de pagina van productdetails de website prijs. GitHub-34074
  • De gelaagde navigatie toont nu producten met de hoogste prijzen zoals verwacht wanneer de Berekening van de Stap van de Navigatie van de Prijs aan Handboek wordt geplaatst.
  • U kunt de per-pagina productgrens nu veranderen die binnen een categorie wordt getoond wanneer vergeet de Paginering van de Categorie wordt toegelaten. Eerder liepen de cookie form_key en de gebruikersinterface form_key uiteen en gaf Magento Open Source deze fout weer: Invalid Form Key. Please refresh the page .
  • De EAV-indexeerfunctie verwerkt nu product-id's als type int om mogelijke prestatieproblemen te voorkomen.
  • Er wordt nu een nieuwe productcache gegenereerd nadat u een nieuwe afbeelding hebt toegevoegd met de naam '.' aan een product, dan sparen het product en schoonmaken het beeldgeheime voorgeheugen. GitHub-32699
  • Magento Open Source geeft nu een foutbericht weer zoals u had verwacht wanneer u een kenmerk probeert te maken van de productpagina zonder het veld Admin in te vullen. GitHub-33099

  • Productbeoordelingen zijn nu correct in alle productlijsten van de catalogus wanneer de homepage meerdere cataloguslijsten bevat. GitHub-33867

Configureerbare producten

  • Magento Open Source geeft nu de juiste productprijs weer voor een configureerbaar product met een geselecteerde optie nadat het aantal is gewijzigd op de pagina met productdetails. Eerder werd de prijs weer op de oorspronkelijke waarde ingesteld nadat de hoeveelheid was gewijzigd.
  • De products vraag wint nu prijzen voor configureerbare producten terug die nauwkeurig op de Vertoning uit de 2} configuratie het plaatsen van de Beeld {weerspiegelen. Voorheen heeft de query geen nauwkeurige prijzen opgeleverd.
  • Configureerbare opties zijn nu gekoppeld aan configureerbare producten die in de beheerfunctie worden gemaakt met POST /V1/configurable-products/configurable1/child .
  • Kenmerken voor meerdere selecties worden nu correct opgeslagen tijdens de productoedeling. Eerder heeft de toepassingOpen Source de standaardoptie voor niet-geselecteerde kenmerken en geselecteerde kenmerken opgeslagen bij het opslaan van een product.
  • Magento Open Source geeft nu configureerbare kenmerken weer zoals u had verwacht tijdens het maken van algemene select -kenmerken via een patchscript. Eerder waren in aanmerking komende algemene kenmerken verborgen.
  • De addConfigurableProductsToCart -mutatie kan nu worden gebruikt om configureerbare producten met aangepaste opties toe te voegen. Eerder heeft de applicationOpen Source de volgende fout gegenereerd: Magento 2.3.4 graphql Notice: Undefined index: option_value in /var/www/html/mg234/vendor/magento/module-configurable-product-graph-ql/Model/Resolver/ConfigurableCartItemOptions.php on line 62 . GitHub-28860

  • U kunt configureerbare producten nu opnieuw rangschikken met optionele aangepaste opties. Eerder is het opnieuw ordenen van pogingen mislukt en is deze fout weergegeven: Some of the selected options are not currently available . GitHub-35409

  • De addConfigurableProductsToCart -mutatie werkt nu zoals u had verwacht bij meerdere producten. Eerder werd onjuiste productinformatie geretourneerd of werd een ongeldig foutbericht geretourneerd. GitHub-30948

Klant

  • Magento Open Source geeft nu de vooraf gedefinieerde EAV-systeemkenmerken correct weer volgens de website-instelling op de winkel. Eerder werden klantkenmerken op websiteniveau die waren ingeschakeld voor de ene website en uitgeschakeld voor de andere, weergegeven als ingeschakeld voor beide websites.

Downloadbaar

  • U kunt nu voorbeeldkoppelingen en bestanden verwijderen uit een downloadbaar product. GitHub-31887

E-mail

  • E-mailberichten die via het systeem worden verzonden, worden nu met succes verzonden naar ontvangers met ".-" in hun e-mailadres.
  • Klanten krijgen nu e-mailherinneringen over hun verlaten winkelwagentjes volgens het juiste schema. De nieuwe SQL-functie van TIMESTAMPDIFF(DAY, ,) heeft de functie TO_DAYS() vervangen en berekent het verschil in de tijdstempels op basis van datum en tijd. Eerder werden er geen e-mailherinneringen verzonden per planning vanwege de onjuiste berekening van twee datum-tijdwaarden voor het verlaten van het winkelwagentje (elke tijdzone) en de servertijd (UTC).
  • Magento Open Source toont nu een foutenmelding op de Verzendpagina wanneer een verkoopster een ongeldig e-mailformaat ingaat nadat de verkoopster de Orde van de Plaats klikt. Eerder werd het foutbericht weergegeven op de pagina Betaling. [ GitHub-33590 ] (https://github.com/magento/magento2/issues/33590

Frameworks

  • De opdracht bin/magento setup:config:set overschrijft niet langer de eerder ingestelde voorvoegsels voor de cache-id in app/etc/env.php .
  • De opdracht bin/magento setup:static-content:deploy -s compact bevat nu naar behoren stijlen van onderliggende thema's. Eerder waren thema-CSS-bestanden na de implementatie niet aanwezig in de winkel.
  • Er is een nieuw fragment toegevoegd om te controleren of slashes worden gebruikt in void -elementen.
  • Magento Open Source genereert niet langer een SQL-fout nadat een nieuwe bron aan een product is toegewezen en de hoeveelheid van het product is gewijzigd. GitHub-35262
  • De sorteervolgorde van kenmerken werkt nu zoals opgegeven in het di.xml -bestand na de update.
  • De functie updateCartCurrency stelt nu een tekenreeks in in plaats van een object in het winkelwagentje. Eerder heeft de applicationOpen Source geen aanhalingsteken geladen met getQuote omdat de functie updateCartCurrency een object instelt in plaats van een tekenreeks in het cart-object. GitHub-34199
  • De berichten van de verdringing komen niet meer voor in eenheidstests toe te schrijven aan \DateTimeFormatter::formatObject(). Deze methode werkt nu zoals u had verwacht met numerieke waarden voor $format .
  • Magento Open Source geeft niet langer een preg_replace() -fout weer in de beheerfunctie. Het derde argument ($subject) is nu van het type array|string in plaats van bool .
  • De methode isFreeShipping retourneert nu een geheel getal in plaats van een Booleaanse waarde. GitHub-35164
  • Magento Open Source genereert niet langer de volgende fout wanneer u een insteekmodule maakt voor een methode van klasse vendor/magento/module-backend/Model/Menu.php : Error: Call to undefined method ReflectionUnionType::getName() . GitHub-35292
  • Magento Open Source retourneert nu een fout van 404 in plaats van een fout van 500 wanneer u naar /checkout/sidebar/updateItemQty/?item_qty=error op de storefront navigeert. Eerder werd deze fout gegenereerd: Warning: A non-numeric value encountered in /vendor/magento/module-checkout/Controller/Sidebar/UpdateItemQty.php on line 69 . GitHub-34380
  • Magento Open Source leidt niet langer tot een trim(): Passing null to parameter #1 ($string) of type string is deprecated -fout wanneer de AMPQ-verbinding zonder SSL-configuratie is geconfigureerd.
  • De databasedefinitie van longblog is gecorrigeerd naar long blob . GitHub-35108
  • Tekst met enkele aanhalingstekens kan nu worden vertaald. GitHub-34319
  • Een TypeError in magento2/app/code/Magento/Security/Model/AdminSessionsManager.php is gecorrigeerd van int naar string . GitHub-34415
  • .htpasswd is toegevoegd aan verboden locaties in het configuratiebestand van nginx . GitHub-35150
  • De laadtijd van de pagina's in de lijst met categoriegeneesproducten is verbeterd door Magento_Ui/js/core/app als een deps to app/code/Magento/Ui/view/frontend/requirejs-config.js toe te voegen. GitHub-34847
  • De methode ProductRepository.php:get retourneert nu eenmaal de cachemoetsen. Eerder werden ze twee keer geretourneerd. GitHub-34958
  • Er is een foutbericht toegevoegd aan een nieuwe uitzondering die is gemaakt in de uitzonderingshandler voor uitsnijdtaken. GitHub-34941
  • De ReadMe-bestanden voor de GraphQl-GroupedProductGraphQl -modules zijn bijgewerkt. GitHub-34951
  • Op de pagina's met de afdrukvolgorde/factuur/creditnota's van de winkel wordt niet langer het standaard-Luminlogo weergegeven in plaats van het logo dat is opgegeven voor weergave op de website. GitHub-34942

Algemene correcties

  • Het plaatsen van de maximumzittingsgrootte aan 0 (Admin opslag > Montages > Configuratie - geavanceerd) meldt niet meer de beheerder. GitHub-35312
  • De configuratie-instellingen van adreskenmerken van de klant worden nu correct geladen op basis van de website waaraan de klant is toegewezen wanneer u een nieuw klantadres toevoegt van de beheerder dat aan een niet-standaardwebsite is toegewezen.
  • Magento Open Source genereert niet langer een uitzondering wanneer u een bundelproduct toevoegt via Page Builder.
  • U kunt nu een klantenaccount maken op een iOS-apparaat met de schuine apostrof (') in de eerste, middelste of achternaam. Eerder was alleen de rechte apostrof toegestaan en bij gebruik van de standaard schuine apostrof van iOS 11+ is een Name is not valid! -fout opgetreden.
  • De query products retourneert nu productinformatie die de configuratie "Gerelateerde producten weergeven" nauwkeurig weergeeft. De velden related_products , upsell_products en crosssell_products in de GraphQL ProductInterface worden nu opgelost op basis van respectievelijk de configuratie Gerelateerde producten weergeven, Upselproducten weergeven en Producten voor meerdere verkopen weergeven.
  • Het Vastgestelde Product als Nieuw van Datum attribuut toont nu de correcte datum wanneer het Vastgestelde Product als Nieuwe attribuut door een bulkupdate van het massaproduct wordt geplaatst. Eerder, plaatste Product als Nieuw van Datum werd getoond als Jan 1, 1970.
  • Gebruikers met beperkte rollen krijgen niet langer automatisch toegang tot nieuwe modules.
  • De voorwaarden van verwante productregels werken nu zoals verwacht met producten die multiselect -kenmerken bevatten.
  • Merchants kunnen nu een kenmerk voor de laagprijs (tier_price) toevoegen aan productvergelijkingen. Eerder, crashte de pagina van productvergelijkingen toen Vergelijkbaar op storefront plaatsend voor deze eigenschap werd toegelaten. GitHub-35244
  • Magento Open Source toont nu een foutenmelding wanneer u een ongeldig koekjesdomein (Opslag > Configuraties > Web > het Domein van de Koekjesie van de Montages van de StandaardKoekjes) plaatst. Eerder liep de website vast. GitHub-35048
  • Magento Open Source genereert niet langer een fout wanneer een beheerder met rollen die binnen het bereik van één website vallen, met PageBuilder producten toevoegt aan Content Elements. Eerder heeft de applicationOpen Source een SQL-fout gegenereerd.
  • Validatie is toegevoegd aan de tweede regel van het adres van de straat op het bewerken en toevoegen van adrespagina's. De minimale en maximale tekstlengten die voor de tweede zijn opgegeven, worden nu afgedwongen.
  • Magento Open Source genereert niet langer de volgende fout tijdens het maken van een catalogusregel in Admin na de upgrade: A technical problem with the server created an error. Try again to continue what you were doing. If the problem persists, try again later .
  • Magento Open Source werpt niet meer een fout wanneer u de Controle hier activeert om een voer van RSS aan uw 1} checkbox van de Lijst van de Weigering te verbinden alvorens op te klikken Weigeren van het Aandeel . GitHub-34998
  • De titel van toont Wachtwoord checkbox (Login van de Klant, de Registratie van de Klant, Klant geeft uit (de sectie van het Wachtwoord van de Verandering), en de Reeks van de Klant Nieuwe Formulieren van het Wachtwoord) is nu vertaalbaar. GitHub-34857
  • De labels en beschrijvingen van opmerkingen zijn bijgewerkt in app/code/Magento/NewRelicReporting/etc/adminhtml/system.xml . GitHub-31947
  • Onbenodigde csp_whitelist.xml bestanden verwijderd. GitHub-30607

GraphQL

  • Er is een ontbrekend price_range -kenmerk toegevoegd aan het GraphQL BundleItemOption -type. GitHub-35010
  • De products vraag keert niet meer attributen als samenvoeging terug wanneer het Gebruik in de Resultaten van het Onderzoek Gelaagde navigatie plaatsen gehandicapt is. GitHub-33318
  • Er is een veld price_including_tax toegevoegd aan CartItemPrices . GitHub-29057
  • De instructies new_from_data en new_to_datefields in ProductInterface zijn niet meer vervangen. GitHub-34783
  • De categories -query genereert niet langer een uitzondering wanneer u een lijst ophaalt met categorieën waarvan de ene een afbeelding bevat die niet op het bestandssysteem kan worden gevonden. Eerder heeft de applicationOpen Source de volgende uitzondering gegenereerd: Category image not found . GitHub-34266
  • De query products retourneert nu category_uid als een aggregatie zoals u had verwacht. GitHub-32557
  • De updateCartItems -mutatie verwijdert nu producten zoals verwacht wanneer de voorraad van het product de maximale voorraad heeft bereikt. GitHub-30220
  • De query urlResolver lost nu het padscheidingsteken (/) correct op wanneer meerdere homepages dezelfde id hebben. Eerder, stelde de vraag niet het afbakening op en keerde ongeldig terug. GitHub-33615
  • Met customer -query's kunt u nu opties voor meerdere selecties voor gebundelde producten ophalen zoals u had verwacht bij het opvragen van bestellingen. GitHub-34717
  • Magento Open Source-sessies eindigen niet meer nadat een GraphQL-verzoek is ingediend. Eerder werd de uitvinder afgemeld door de ClearCustomerSessionAfterRequest -insteekmodule. GitHub-34550
  • De configureerbare waaier van de productprijs in products vraagreacties wordt nu correct berekend wanneer de Vertoning uit de configuratie van de Producten van de Voorraad wordt toegelaten. Voorheen werd bij de berekening van de minimum- en maximumprijs rekening gehouden met opties voor gehandicapten.
  • De query products retourneert nu correct gefilterde meerdere categorieën bij het sorteren op positie.
  • setShippingAddressesOnCart -aanvragen zijn nu correct. Eerder heeft de applicationOpen Source een fout gegenereerd wanneer u regio-id in plaats van regiocode hebt gebruikt.
  • products -query's retourneren nu alleen de categorieën die zijn gekoppeld aan de winkel die in de aanvraag is doorgegeven.
  • De query categoryList retourneert nu resultaten die de hoofdcategorie van de desbetreffende store weerspiegelen wanneer de opslag wordt opgegeven in de header. Eerder waren categorieën uit de standaardhoofdcategorie opgenomen in de resultaten, ook al is een andere opslagplaats opgegeven in de koptekst.
  • De products vraag keert niet meer attributen als samenvoeging terug wanneer het Gebruik in de Gelaagde Navigatie van de Resultaten van het Onderzoek plaatsen gehandicapt is. GitHub-33318
  • De query cart retourneert nu slechts één betalingsmethode voor gratis bestellingen. Eerder werden alle actieve betalingsmethoden geretourneerd in het antwoord op de query. GitHub-34036
  • Met products query's worden niet langer price_range -waarden geretourneerd voor configureerbare producten die worden beïnvloed door uitgeschakelde varianten. GitHub-33629
  • Er is een plug-in toegevoegd vóór de aanroep van collectQuoteTotals om ervoor te zorgen dat de credits van de winkel niet meerdere keren worden toegepast.
  • De generateCustomerTokenAsAdmin mutatie haalt nu klanttokens terug zoals verwacht. Eerder werden geen tokens geretourneerd en deze fout is geretourneerd: Customer email provided does not exist .
  • Het GraphQL-schema is nu geldig wanneer een aangepast type productkenmerk wordt gedefinieerd. Eerder was het schema ongeldig omdat het type -kenmerk op producttypen werd overschreven door het aangepaste type -kenmerk. GitHub-34929
  • Klanten die zijn toegevoegd of bijgewerkt met de mutatie createCustomer , createCustomerV2 , updateCustomer of updateCustomerV2 , worden nu toegevoegd met actieve nieuwsbrief-abonnementen. Eerder werden klanten niet meer geabonneerd op nieuwsbrieven, zelfs als het verzoek juiste invoerparameters bevatte. GitHub-33599
  • De products -query voor een specifieke opslagweergave retourneert nu alleen categorieën die zich in de hoofdcategorie van de specifieke website bevinden bij implementatie op meerdere sites. Eerder, keerde de vraag categorieën van de wortelcategorieën van andere websites terug. GitHub-34570
  • De query products retourneert nu alleen de subcategorie van de opgegeven categorie-id. Eerder werden alle rubrieken geretourneerd. GitHub-35220
  • De query customerOrders reageert nu zoals verwacht wanneer het object gift_message is opgegeven in de reactie, maar er is geen cadeaubericht. Eerder, keerde de vraag dit bericht terug: Can't load gift message for order is returned. GitHub-28957
  • Oplossing voor een probleem met de catalog_category_product -indexeerfunctie dat ertoe leidde dat de products -query categorieën uit een andere winkel retourneerde. GitHub-31253
  • De mutatie generateCustomerToken maakt nu een item in customer_log zoals u had verwacht na het genereren van een klanttoken. GitHub-33378

Google Analytics

  • De Google-tagmodule is toegevoegd aan de codebase, die de overgang naar Google Analytics 4 in juli 2023 ondersteunt. U kunt momenteel nieuwe gegevens gebruiken en verzamelen in uw Google Universal Analytics-eigenschappen, maar Google Universal zal in juli 2023 aan het einde van de levensduur komen. GitHub-35204, GitHub-35376

Afbeelding

  • Afbeeldingen op pagina's met productdetails flikkeren niet meer en afbeeldingen blijven gecentreerd zoals u had verwacht. Eerder, nadat een pagina met productdetails klaar was met het laden van een afbeelding, verschoven de afbeeldingen zichtbaar naar beneden.

Importeren/exporteren

  • De productpositie in de CSV-exportproducten die verband houden met, upsell en cross-sell, is nu correct nadat een product van de Admin is verwijderd voordat het CSV-bestand opnieuw wordt gegenereerd. Eerder werden de posities van producten die via een kruisverkoop werden verkocht, niet opnieuw berekend nadat een product dat via een kruisverkoop werd verkocht was verwijderd en de bestelling van de productpositie onjuist was.
  • Magento Open Source controleert nu op een aangepaste weergave voordat kolommen worden gefilterd wanneer rapporten worden geëxporteerd. Eerder werd in geëxporteerde rapporten geen rekening gehouden met aangepaste weergaven en waren de geëxporteerde kolommen onjuist.
  • Magento Open Source kan nu afbeeldingen met lange bestandsnamen importeren. Eerder importeerde de applicationOpen Source de afbeelding niet en veroorzaakte deze fout: Imported resource (image) could not be downloaded from external resource due to timeout or access permissions in row(s): .
  • Kenmerken van categorie-id zijn nu beschikbaar in geplande exportfilters.
  • Bundel producten die een vraagteken (?) bevatten in de optietitel kan nu met succes worden geïmporteerd vanwege verbeteringen aan de query builder binnen de populateExistingOptions -methode. De optietitel wordt ook correct weergegeven. Eerder, na de eerste invoer, resulteerde de opeenvolgende invoer in bedorven gedrag en verdubbelde opties. Klanten konden het product ook niet aan de winkelwagen toevoegen.
  • Toegevoegde validatie voor categorienamen tijdens het importeren. Eerder heeft de toepassing Open Source categorienamen niet gevalideerd, wat tot fouten leidt wanneer categorienamen langer dan 255 tekens zijn.
  • Bestaande records in de tabel catalog_url_rewrite_product_category worden nu verwijderd voordat nieuwe records worden ingevoegd. Eerder trad de volgende fout op tijdens het importeren van meerdere producten: SQLSTATE[23000]: Integrity constraint violation . GitHub-34210

Infrastructuur

  • Een vervangen plug-in Contextmenu is verwijderd uit de lijst met plug-ins.
  • De TinyMCE editor-logica met betrekking tot werkbalken in de module Page Builder is bijgewerkt als gevolg van de introductie van delayedRender logica voor de werkbalk in TinyMCE.
  • De voorwaarden van Race onderbreken niet langer het creëren van de contentUpdated gebeurtenisluisteraar. GitHub-32068
  • De functie getTypeID retourneert nu de product-id, niet de product-id. GitHub-35458
  • De schuifregelaar voor de jQuery-gebruikersinterface en de SelectMenu -toewijzing zijn gecorrigeerd in vendor/magento/module-theme/view/base/requirejs-config.js .

  • Waarnemers die op sales_order_state_change_before zijn geplaatst, ondersteunen nu het ophalen van gegevens van het orderobject. Het argument sales_order_state_change_before event is bijgewerkt. GitHub-26789

  • indexer:reset is vernieuwd om $indexer->invalidate() aan te roepen. GitHub-34988
  • U kunt nu het dubbele punt in een htmlClass attribuutwaarde gebruiken, die het gebruik van extra componenten zoals Tailwind UI steunt. GitHub-34430

Logboekregistratie

  • De acties van de klant, het adres van de klant en van de orde worden nu geregistreerd correct in het Admin actierapport. Eerder registreerde de applicationOpen Source geen acties als de postDispatch handler niet was opgegeven in configuratie-instellingen.

MFTF

Actiegroepen

De herhaalde acties zijn vervangen door actiegroepen in deze tests:

AdminConfigurableProductChildrenOutOfStockTest GitHub-32378
AdminCreateStoreViewTest GitHub-34631

Nieuwe tests

AdminUnlockAdminUserEntityTest GitHub-34836

StorefrontNewsletterSubscriptionWithEnabledNeedToConfirmConfigTest GitHub-33344

Refactortests

AdminCancelTheCreatedOrderWithCashOnDeliveryPaymentMethodTest GitHub-33692

Nieuwsbrief

  • Logged-binnen klanten zijn niet meer duidelijk als gasten in Admin > Marketing > Abonnees van de Nieuwsbrief.
  • Het e-mailadres van de de bevestigingsbevestiging van het nieuwsbrief heeft nu het correcte, store-specific e-mailadres in het Van gebied als de klant aan een niet-gebrek opslag wordt toegewezen en van Admin wordt ingetekend of wordt geabonneerd. Eerder, ontving de klant een e-mail met standaardE-mail in van kopbal. GitHub-34963
  • De afmelding-URL in de e-mailsjabloon voor nieuwsbrief werkt nu zoals u had verwacht. GitHub-33310

Volgorde

  • De klantgegevens van de gast worden nu met succes bewaard nadat een orde wordt uitgegeven. Eerder gingen bepaalde klantgegevens verloren, waaronder customer_firstname en customer_lastname, x_forwarded_for .
  • De handelaren kunnen niet meer een creditmemo met een decimale totale hoeveelheid tot stand brengen wanneer Decimale hoeveelheid op een product of globaal plaatsend niveau wordt onbruikbaar gemaakt. Eerder konden handelaren een creditnota voor decimale totale hoeveelheid maken wanneer deze niet van toepassing was.
  • Filteren op datum werkt nu goed voor facturen, verzendingen, creditmemo's, CMS-pagina's en CMS-blokrasters wanneer de tijdzone die is ingesteld in de voorkeuren afwijkt van de tijdzone die is ingesteld op een lokale computer. Eerder werd de datum onjuist geparseerd en bevatten de gefilterde resultaten gegevens buiten het ingestelde datumbereik.
  • Magento Open Source wijzigt geen aangepaste e-mailadressen meer die aan bestellingen zijn toegewezen wanneer u het hoofd-e-mailadres wijzigt dat aan de klant is toegewezen op de pagina Bewerken van de Admin-account. Eerder, toen u het belangrijkste e-mailadres voor een klant bewerkte, werd het nieuwe e-mailadres toegewezen aan elke orde die voor die klant werd gecreeerd. GitHub-34397
  • Magento Open Source geeft nu records van de opgevraagde store weer op de rasterpagina voor creditmemo's in implementaties met PHP 7.4. Eerder heeft de applicationOpen Source de volgende fout gegenereerd nadat u een creditmemo hebt gemaakt en geprobeerd deze weer te geven: The store that was requested wasn't found. Verify the store and try again .
  • Magento Open Source geeft nu creditmemo's weer op de pagina van het credit memo-raster voor bestellingen die zijn gemaakt van winkelweergaven waarvan de naam wordt voorafgegaan door getallen. Eerder gaf de toepassing Open Source de fout weer: The store that was requested wasn't found. Verify the store and try again. Exception in /var/www/html/vendor/magento/module-store/Model/StoreRepository.php:75 . GitHub-35122
  • Magento Open Source geeft nu de gratis verzendkosten (0) weer op de totalen van de betalingspagina Admin en de winkelpagina. Eerder, toen de verzending nul was voor een bestelling, gaf de toepassing Open Source het totale verzendbedrag niet weer op de factuurpagina en het totale verzendbedrag.
  • De kolom increment_id in de tabel sales_order is verhoogd. Eerder, derdemodules die veronderstelden dat sales_order.increment_id een lengte van 50 karakters bewaarde slechts de eerste 32 karakters van een increment_id had. GitHub-34521

Betalingsmethoden

  • Beheerders kunnen nu een bestelling op de beheerder plaatsen met de PayPal PayflowPro-betalingsmethode. Eerder gaf de toepassing Open Source de volgende fout weer: No such entity with cartId = 0 .
  • Op de pagina Betalingscontrole in de betalingsworkflow wordt nu de juiste naam van de betalingsmethode weergegeven wanneer de betaling wordt gedaan met Venmo, PayPal Later of PayPal.
  • De query cart retourneert niet langer alle actieve betalingsmethoden voor gratis bestellingen. GitHub-34036

Braintree

  • Handelaren kunnen nu een gedeeltelijke terugbetaling verzenden voor bestellingen die via Braintree met Apple Pay zijn betaald. Dit was een bekend probleem in Magento Open Source 2.4.4.

PayPal

  • Magento Open Source geeft nu de juiste naam van de klant weer in een gastbestelling die met PayPal is betaald. Eerder werd de naam van de klant weergegeven als gast.
  • De resolver voor de createPaypalExpressToken-mutatie is bijgewerkt en gebruikt nu de waarde die is opgegeven in het invoerveld use_paypal_credit. Eerder werd geprobeerd een ongeldig paypal_credit veld te gebruiken. GitHub-35180

Prestaties

  • Het geheime voorgeheugenbeheer van Redis is verbeterd door de toevoeging van TTL (vervaldatum) voor configureerbare producten' bijbehorende de geheime voorgeheugens van productgegevens. Eerder, werden deze geheime voorgeheugens niet weggezet wegens ontbrekende waarden van TTL als Redis zeer belangrijk uitzettingsbeleid aan een vluchtig uitzettingsbeleid werd gevormd.
  • Het nieuwe attribuut Grid Filter Condition Type customer/customer address bepaalt hoe een kenmerkfilter wordt vergeleken met de kenmerkwaarden in de database, Opties omvatten Partial Match, Prefix Match en Full Match .
  • De fulltext-index van Catalogus zoeken is verplaatst buiten de winkellus, die het opnieuw indexeren stroomlijnt. GitHub-33984
  • Correctie van probleem met array_merge in loops. GitHub-33929

Prijsstelling

  • Prijskenmerken die geen waarde in het standaardbereik hebben (maar die op het niveau van de store-view zijn gedefinieerd), worden nu op de juiste wijze geïndexeerd. Eerder, hielden de SQL uitdrukkingen die prijskenmerkwaarden van lijst EAV terugwint geen rekening met het scenario waarin de waarde niet in het standaardwerkingsgebied werd bepaald.
  • De prijs op de pagina met productdetails is nu gelijk aan de prijs die wordt vermeld in de uitcheckworkflow voor prijzen op lagen die per geselecteerde hoeveelheid verschillen (een product dat bijvoorbeeld anders wordt geprijsd op basis van 2 objecten in plaats van 5 objecten). Voorheen weerspiegelde de uitcheckprijs de prijs voor de laagste producthoeveelheid.

ReCAPTCHA

  • De legt knoop op Login voor en leidt tot een pagina van de Rekening is nu inactief tot ReCaptcha volledig wordt geladen.

Rollen

  • De opslag > Configuratie > de pagina van de Diensten toont nu de informatie van het Web API van Magento Open Source zoals verwacht wanneer de Toegang van het Middel aan Douane op het lusje van de Middelen van de Rol wordt geplaatst. GitHub-35506

Zoeken

  • Als u producten filtert op basis van een kleurstaal op de navigatie met lagen, wordt de juiste afbeelding voor de producten weergegeven na de correctie.
  • Elasticsearch-query's werken nu zoals verwacht wanneer int is geconfigureerd als een doorzoekbaar achterste type -kenmerk. Eerder heeft de applicationOpen Source een uitzondering Elasticsearch\Common\Exceptions\BadRequest400Exception gemaakt.
  • U kunt onderzoekssynoniemen samen met de Minimale Termen nu gebruiken om parameter in de vragen van Elasticsearch aan te passen. Eerder, als deze parameter in montages en onderzoekstermen voor specifieke sleutelwoorden werd gespecificeerd, keerde het onderzoek geen resultaten terug.
  • Magento Open Source toont nu een nauwkeurige telling van de onderzoeksresultaten op de storefront in plaatsingen waar de Suggesties van het Onderzoek en de Telling van Resultaten voor Elke Suggestie plaatsen worden toegelaten. Eerder was het aantal dat naast de trefwoorden werd weergegeven nul.
  • Producten die op aangepaste kenmerken op de pagina Catalog zijn gesorteerd, worden nu in de verwachte volgorde weergegeven. Eerder, werden de producten gesorteerd door hun waarde ID van de attributenoptie, die op de orde weerspiegelt waarin zij aan het attribuut werden toegevoegd. GitHub-33810
  • Als u producten filtert op kleurstaal in de navigatie met lagen, worden nu de juiste productafbeeldingen weergegeven. Eerder bevatte de navigatietoets met lagen PageCache geen filterparameters voor configureerbare producten.
  • Oplossing voor PHP-fouten op de catalogsearch/advanced/result en catalogsearch/advanced/index -pagina's. Eerder, toonde Magento Open Source deze fout toen een serie in om het even welke geavanceerd onderzoekskoord werd overgegaan: Warning: trim() expects parameter 1 to be string, array given | magento/module-catalog-search. GitHub-33586

Verzending

  • Magento Open Source genereert niet langer een fout bij het laden van UPS-verzendkosten als er geen toegestane verzendmethoden zijn geselecteerd. Eerder, toen een winkelier een verzendadres in de kassa onder deze omstandigheden inging, werden geen andere verzendmethoden weergegeven en gaf Magento Open Source een fout weer in de winkel. GitHub-34411
  • De prijzen van virtuele producten worden nu niet meegerekend in het verzendbedrag van de berekeningstabel. Eerder werden de verzendkosten voor deze producten niet correct berekend. GitHub-35185
  • Verzendsnelheden voor tabelsnelheden met een nulprijs worden nu correct weergegeven in het blok Overzicht van bestellingen voor afrekenworkflows voor orders waarop een kortingscoupon is toegepast. Eerder werd de verzendmethode niet weergegeven.

Belasting

  • De vaste productbelasting (FPT) wordt nu correct weergegeven voor producten in de winkelwagen. Eerder, als de veelvoudige producten in het winkelwagentje Vaste Belasting van het Product (FPT) hebben en Belasting op FPT toepassen werden toegelaten, werden alle FPTs toegewezen aan het laatste product in het winkelwagentje en teruggesteld voor andere producten.
  • Het totaal van Vaste productbelasting (FPT) voor het overzichtsgedeelte van de bestelling van de afrekenworkflow wordt nu correct berekend.
  • Magento Open Source werkt nu de Excluding Tax tier price voor een eenvoudig product op de productpagina bij, zoals wordt verwacht nadat de hoeveelheid van het eenvoudige product is gewijzigd.
  • Validatie is toegevoegd aan de pagina voor winkelconfiguratie om te controleren of het geselecteerde land uit de vervolgkeuzelijst op de EU-lijst met landen staat. De Validate knoop van het Aantal van de BTW is nu zichtbaar slechts voor EU landen. Eerder was de knop zichtbaar voor alle landen, inclusief het VK.
  • De prijs van de rij wordt nu correct berekend wanneer de Prijzen van het Product van de Vertoning in Catalogus aan of exclusief Belastingen of het omvatten en het uitsluiten van Belastingen wordt geplaatst. Eerder stond op de pagina met productdetails de prijzen op de lijst met belastingen, ondanks de instelling.
  • De belastingen worden nu correct toegepast voor orden aan om het even welk geldig adres in winkelcentra die de Portugese scène gebruiken. GitHub-34271
  • De query cart bevat geen belasting meer wanneer subtotal_with_discount_excluding_tax wordt geretourneerd. GitHub-33905
  • Web API-aanvragen voor ordergegevens (GET /V1/orders/) retourneert niet langer negatieve waarden voor rijtotalen.

Testen

  • Fouten gecorrigeerd met Magento.GraphQl.CatalogGraphQl.ProductSearchTest.testSearchSuggestions wanneer uitgevoerd met AWS Elasticsearch-configuratie.
  • De integratietest van testCreateProductOnStoreLevel leidt niet langer tot een geneste transactie in de database.

  • De volgende uitzondering treedt niet meer op wanneer WebAPI-tests voor de functie Send Friend worden uitgevoerd wanneer de afbeelding van het product niet is ingesteld op PHP 8.1: exception main.ERROR: /var/www/html/lib/internal/Magento/Framework/DataObject.php:131 strpos(): Passing null to parameter #1 ($haystack) of type string is deprecated . GitHub-34864

Vertalingen en landinstellingen

  • U kunt nu hetzelfde element meerdere keren bewerken met het gereedschap Inline vertalen. Eerder was alleen de eerste wijziging opgenomen die met dit gereedschap is aangebracht.
  • De kiezer van de winkelweergave blokkeert niet langer het vertaalvenster wanneer u Admin-tekst of -labels bewerkt. U kunt deze eigenschappen van de vertaalruit nu uitgeven, en de interfacevertoningen deze veranderingen wanneer u klikt voorleggen.
  • De datum-tijdnotatie voor Admin voor Braziliaanse landinstellingen in Portugees en Frans is nu geldig.
  • Een accent accent toegevoegd (`) teken aan de naamvalidator zodat een klantenaccount kan worden gemaakt voor voornaam of achternaam die dit accent bevat.
  • De tekst op voegt toe aan wortel knoop op de pagina van de Details van het Product nu vertaald in de taal die in de bijbehorende scène wordt gespecificeerd. Vertaalbestanden worden nu geconverteerd naar corresponderende JavaScript-bestanden op basis van de gebieden, thema's en landinstellingen wanneer translate_strategy=embedded . Eerder werd de tekst teruggezet naar het Engels nadat het product aan het winkelwagentje was toegevoegd.
  • De Synoniemen van het onderzoek respecteren nu hun toegewezen opslagwerkingsgebied. Eerder was een aan een specifieke winkel toegewezen synoniem doorzoekbaar in een andere winkel.
  • Problemen met de landinstelling Filippijnen zijn opgelost. GitHub-33996

UI

  • De lange productnamen in de Catalogus > Producten net worden nu word-verpakt in plaats van getoond in één enkele lijn.
  • Het minimale en maximale geboortebereik worden nu opgeslagen als een correcte tijdstempel en vervolgens omgezet van een geldige tijdstempel in een geldige datumnotatie.
  • De onbeschikbaarheid van magento.com leidt niet langer tot prestatieproblemen tijdens het aanmelden bij Admin. Er is een time-out toegevoegd aan het verzoek om een releasemelding op te halen.
  • De resultaten van de filters Admin-volgorde, Klant en Productraster blijven nu zoals u had verwacht in de Chrome-browser.
  • U kunt een klant van Admin nu tot stand brengen wanneer Magento_LoginAsCustomerAdminUi wordt toegelaten en de Mening van de Opslag aan Login wordt geplaatst aan handselectie. Eerder heeft de applicationOpen Source de volgende fout gegenereerd: (Magento\Framework\Exception\LocalizedException): Unable to get Customer ID . GitHub-33096
  • De pijl Volgende wordt nu uitgeschakeld zoals u had verwacht wanneer een winkelier de laatste miniatuurafbeelding in de galerie met productafbeeldingen bereikt.
  • Het Onderzoek door sleutelwoord inputgebied heeft nu een aria-label element in plaats van placeholder op de Catalogus > pagina van het Product.
  • De koppeling Privacybeleid in Admin-voettekst is nu gekoppeld aan het nieuwe privacybeleid van Adobe.
  • Beheerders hebben nu toegang tot de menuopties voor Admin wanneer JavaScript-pakketten zijn ingeschakeld in de productiemodus. GitHub-35325
  • Beheerders kunnen nu de vervaldatum van de huidige gebruiker hoger dan 2038 instellen en de gebruiker met succes opslaan. Eerder kon de gebruiker van wie de vervaldatum werd veranderd niet login na het programma openen.
  • Magento Open Source toont nu een informatief foutenbericht wanneer een beheerder probeert om een adres met bovenmatige straatlijnen in Admin Opslag > Attributen > Adres van de Klant te bewaren. De beheerder kan nu de extra adresgegevens verwijderen en het adres opslaan. Eerder heeft de toepassingOpen Source de extra regels toegewezen, maar de gegevens zijn niet opgeslagen.
  • De weergaveconfiguratie voor het product in de database en de lokale opslag is bijgewerkt. De aangepaste rasterweergaven worden nu opgeslagen tijdens het opnieuw laden van de pagina en het weergeven van wijzigingen.
  • U kunt nu schakelen tussen de opslagweergaven wanneer websitebeperkingen zijn ingeschakeld. Eerder, voorkwamen de problemen met de schakelaar van de archiefmening van de winkelmening het schakelen van archiefmeningen.
  • Het uploadformulier voor favicon-pictogrammen ondersteunt nu .ico -bestandstypen. Als u eerder een favicon-bestand met dit extensietype probeerde te uploaden in Admin, gaf de toepassing Open Source de volgende fout weer: Warning: imagecreatefromstring(): one parameter to a memory allocation multiplication is negative or zero, failing operation gracefully in /var/www/html/vendor/magento/module-media-storage/Model/File/Validator/Image.php on line 64 . GitHub-34858
  • Correctie van weergaveproblemen met het keuzemenu Selecteren in het beheerderaster. GitHub-35386

URL herschrijft

  • URLs voor een product in een specifieke opslagmening wordt slechts nu verwijderd uit de url_rewrite lijst en Admin nadat de status van het de zichtbaarheid van de attributencode voor de specifieke archiefmening wordt veranderd in niet Zichtbaar individueel. Eerder werden alle URL's voor het product uit de tabel url_rewrite verwijderd. GitHub-34937

Video

  • U kunt nu YouTube URL-parameters gebruiken met Page Builder om een nieuwe video toe te voegen. Eerder werden deze parameters automatisch verwijderd van de URL.
  • U kunt nu een Vimeo-video instellen die op de achtergrond in een banner -element wordt uitgevoerd wanneer CSP is ingesteld op restrict mode . Eerder heeft de applicationOpen Source een JavaScript-fout gegenereerd.

Web API-framework

  • Mutex is geïmplementeerd voor orders om rasvoorwaarden tijdens update door gelijktijdige aanvragen te voorkomen. Eerder, resulteerden de rassenvoorwaarden tijdens gezamenlijke vraag REST API in een beschrijven van de informatie van de verzendstatus in de Admin Punten Bestelde lijst.
  • De overerving van de rol van de productafbeelding blijft nu behouden, tenzij dit expliciet wordt gedefinieerd in de payload bij het bijwerken van een product in een specifieke winkelweergave via de REST API.
  • Het schema Swagger (/rest/schema) gebruikt nu unieke verrichting IDs.
  • De prijsregels voor winkelwagentjes die zijn gemaakt via het eindpunt van POST /V1/salesRules/ , behouden nu de bestaande waarden van de couponcode nadat de status is gewijzigd van uitgeschakeld in ingeschakeld. GitHub-35298
  • De prijsregels voor winkelwagentjes die via het eindpunt POST /V1/salesRules/ zijn gemaakt, bevatten nu geldige waarden from_date en to_date . GitHub-35265
  • CartItemInterface bevat nu customizable_options . GitHub-31180
  • REST API bulkaanvragen voor PUT en DELETE functioneren nu naar behoren wanneer de module Magento_ReCaptchaWebapiRest is ingeschakeld. GitHub-35348
  • De Bulk Rest API werkt nu met de optie bySku voor configureerbare producten. Eerder werd een fout van 500 geretourneerd.
  • Het maken van een nieuw speciaal prijsschema met het POST /V1/products/special-price eindpunt werkt nu zoals verwacht. Eerder, keerde het eindpunt deze fout terug: Future Update already exists in this time range. Set a different range and try again.
  • Het /V1/products/base-prices eindpunt werkt nu zoals verwacht met de Wijze van de Prijs van de Catalogus - Website. GitHub-30132

Wissenlijst

  • Wanneer u een objectnummer bijwerkt op de pagina met verlanglijsten, wordt het aantal op de pagina met productdetails bijgewerkt zoals u had verwacht. De toepassing Source openen haalt nu de bijgewerkte waarde op van de product-URL en vult het qty veld met productdetails in van de verlanglijst zelf.

Bekend probleem

Uitgave: De gebruikers van Admin kunnen geen orde of een re-orde voor klanten van Admin tot stand brengen wanneer Braintree wordt toegelaten. Wanneer de Admin gebruiker of Orde of klikt herordent, legt Adobe Commerce niet de orde voor, en system.log toont deze fout: report.CRITICAL: Error: Call to a member function getMethodInstance() on null in /app/vendor/paypal/module-braintree-core/Block/Form.php:174. Oplossing: BUNDLE-3137-composer.patch is nu beschikbaar. Zie Admin kan geen orde/reorder tot stand brengen wanneer de betaling van Braintreeartikel van de Kennisbank voor een bespreking van deze kwestie en toegang tot het flard toeliet. Een oplossing wordt ook opgenomen in Adobe Commerce 2.4.5-p1.

Communautaire bijdragen

Wij zijn de bredere Magento Open Source-gemeenschap dankbaar en willen graag hun bijdrage aan deze release erkennen.

Het team van de Techniek van de Gemeenschap Magento Medewerkershandhaaft een lijst van hoogste bijdragende individuen en partners door maand, kwartaal, en jaar. Van die pagina van Medewerkers, kunt u verbindingen aan hun samengevoegde PRs op GitHub volgen.