Produktstatusen är felaktig när den skapas programmatiskt
I den här artikeln finns en korrigering för när produktstatus är inaktiverad och produkter inte visas i butiken, eller tilldelas till fel butiksvyer när de skapas/uppdateras programmatiskt.
Berörda produkter och versioner
- Adobe Commerce i molninfrastruktur 2.X.X
- Adobe Commerce lokal 2.X.X
Problem
När katalogprodukterna skapas eller uppdateras via programkod från ett skript med Adobe Commerce-programmet startat, kan produkterna ha statusen Inaktiverat och/eller tilldelats fel butiksvy.
Orsak
Problemet kan uppstå på grund av ACL-begränsningar för Adobe Commerce instansadministratörsroller. Om det är ett startprogram kommer det inte att finnas några initierade administratörssessioner med lämpliga ACL-inställningar. Det skulle göra att valideringar misslyckas i modulen Magento_AdminGws
, som ansvarar för behörighetskontroll av sådana åtgärder.
Lösning för felaktig produktstatus
Ange en dynamisk ID-inställning för Magento\Framework\Authorization\PolicyInterface
, enligt beskrivningen i avsnittet ObjectManager>Programmatiska produktuppdateringar i utvecklardokumentationen.