Hallo zusammen,
wir haben momentan das Problem, dass der Custom Cookie Provider nicht die Änderungen an der Datei im Theme lädt. Daher werden Cookies nicht im Cookie Consent Fenster abgefragt. Bisher hatte das sehr gut funktioniert.
Daraufhin habe ich nochmal die Doku gecheckt unter:
Mir ist aufgefallen, dass wir in unserem Theme den Cookie Provider unter /src/Framework/Cookie/CustomCookieProvider.php gespeichert haben. In der Doku wird hier der Ordner/src/Service/CustomCookieProvider.php angegeben. Ich nehme allerdings an, dass das egal ist solange der Pfad in der /src/Resources/config/services.xml passt oder? Auch ist in all unseren Plugins der Pfad für den Cookie Provider „src/Framework/Cookie/CustomCookieProvider.php“ . Hat jemand ne Idee warum ich die Änderungen nicht sehe?
Danke im Voraus!
Hier der relevante code aus der services.xml
<service id="Theme\Framework\Cookie\CustomCookieProvider"
decorates="Shopware\Storefront\Framework\Cookie\CookieProviderInterface">
<argument type="service"
id="Theme\Framework\Cookie\CustomCookieProvider.inner"/>
</service>
und der Provider
<?php declare(strict_types=1);
namespace Theme\Framework\Cookie;
use Shopware\Storefront\Framework\Cookie\CookieProviderInterface;
class CustomCookieProvider implements CookieProviderInterface
{
private const singleCookie = [
'snippet_name' => 'Marketing',
'snippet_description' => 'Google Remarketing',
'cookie' => 'googleRemarketing',
'value' => 'googleRemarketing',
'expiration' => '30000'
];
private const cookieGroup = [
'snippet_name' => 'Analytics',
'snippet_description' => 'Cookies die uns unterstützen Ihnen die richtigen Produkte vorzuschlagen.',
'entries' => [
[
'snippet_name' => 'Microsoft Advertising',
'cookie' => 'cookie-ms-ads',
'value' => 'ms',
'expiration' => '30000'
]
],
];
private $originalService;
// cookies can also be provided as a group
function __construct(CookieProviderInterface $service)
{
$this->originalService = $service;
}
public function getCookieGroups(): array
{
return array_merge(
$this->originalService->getCookieGroups(),
[
self::cookieGroup,
self::singleCookie
]
);
}
}