Frontend Access
Close Website for Non-Authenticated Visitors
In order to prevent non-registered customers from accessing the storefront, you can disable website access for these users.
To change access, navigate to Configuration > Commerce > Guests > Website Access and set the Enable Guest Access option.
When access is disabled, all non-authenticated visitors are redirected to the login page.
Oro\Bundle\FrontendBundle\EventListener\GuestAccessRequestListener
creates a redirect response; to get a better understanding of how it makes works, take a look at the description inside the class.
A few system URLs are still available, even if access for non-authenticated visitors is restricted.
A list of patterns of those URLs can be found in Oro\Bundle\FrontendBundle\GuestAccess\Provider\GuestAccessAllowedUrlsProvider
.
To add a pattern to the list of allowed URL patterns, call addAllowedUrlPattern of the oro_frontend.guest_access.provider.guest_access_urls_provider service or create your own provider which should implement Oro\Bundle\FrontendBundle\GuestAccess\Provider\GuestAccessAllowedUrlsProviderInterface
, and register it in the DI container with the tag oro_frontend.guest_access_urls_provider.
acme_frontend.guest_access.provider.guest_access_urls_provider:
class: Acme\Bundle\DemoBundle\GuestAccess\Provider\MyGuestAccessAllowedUrlsProvider
tags: ['oro_frontend.guest_access_urls_provider']
Frontend Datagrid
The frontend datagrid configuration controls the display of the back-office datagrids in the storefront. The frontend datagrid is configured in the Resources/views/layouts/<theme>/config/datagrids.yml
file within the configuration directory of your bundle.