If no cookie set -> redirect

Ich bin mit der Plugin Programmierung noch nicht ganz so vertraut :slight_smile: Ich bin gerade am überlegen, wie ich es anstelle einen cookie zu setzen und dann zu sagen, wenn der cookie nicht gesetzt ist, leite auf url xy weiter. Per standalone php ist das klar - nur wie würde ich es hier in einem plugin lösen ? :slight_smile: Oder kann ich hier auch praktisch direkt in die shopware.php schreiben if cookie set mach das wenn nicht mach das ? :slight_smile: Wäre natürlich hardcoded aber hey - halb so wild :sunglasses:

Okay ich löse es einfach hardcoded in der Shopware.php $code = 'zugangscode'; setcookie('code',$code,time() + (86400 \* 7)); // 86400 = 1 day if ($\_COOKIE['code']) { $request = Request::createFromGlobals(); $kernel-\>handle($request) -\>send(); } else { include blablabla };

Hi, du kannst dir ein kleines Plugin schreiben (Einstieg unter devdocs.shopware.com) und dir dann im Frontend ein PreDispatch-Event registrieren (Enlight_Controller_Action_PreDispatch_Frontend). Dort kannst du dann sowas machen: [quote]if (!Shopware()->Front()->Request()->getCookie(‘meinCookie’)) { Shopware()->Front()->Response()->setRedirect(‘http://www.heise.de’); }[/quote] (das ist jetzt global über das Singleton und auch nicht unbedingt “best practice”, steht aber immer zur Verfügung und tut auch nicht weh). Solche Core-Anpassungen, wie du vorschlägst, werden mit jedem SW-Update potenziell überschrieben und führen zu nicht-updatefähigen Shops. Da fängt man sich echt nur Probleme ein. Hoffe, das hilft ein wenig :slight_smile: Besten Gruß und schönen Abend noch, Daniel

1 „Gefällt mir“

Okay dann schaue ich es mir an, muss mich da eh mal reinarbeiten :slight_smile: Das mit den hardcoded ist halb so wild, da die Funktion hier eh nur einige Tage benötigt wird.