# 5. Eigene Login Seite

Sollten Sie eine eigene Login Seite programmiert haben, auf der das Login-Formular von Shopware eingebunden wird, müssen Sie eine weitere Code-Erweiterung in Ihren Shop einbauen, damit die Login-Weiterleitung auch mit Ihrer Login Seite funktioniert. Die App bietet ab Version 2.1.0 dafür eine entsprechende Möglichkeit. Nachfolgend wird beschrieben, was zu tun ist.

## 5.1 Subscriber anlegen

Zuerst müssen Sie an einer beliebigen Stelle in Ihrem Plugin ein Subscriber anlegen. Hier ist zunächst ein vollständiges Beispiel und weiter unten wird das Beispiel erläutert:

```php
<?php declare(strict_types=1);

namespace MyPlugin\Subscriber;

use Momocode\MomoLoginRedirectSW6\Redirect\Event\RedirectLoginRoutesEvent;
use Symfony\Component\EventDispatcher\EventSubscriberInterface;

class RedirectLoginRoutesSubscriber implements EventSubscriberInterface
{
    public static function getSubscribedEvents(): array
    {
        return [
            RedirectLoginRoutesEvent::class => 'onRedirectLoginRoutes',
        ];
    }

    public function onRedirectLoginRoutes(RedirectLoginRoutesEvent $event): void
    {
        $routes = $event->getLoginRoutes();
        $routes[] = 'frontend.account.custom-login.page';
        $event->setLoginRoutes($routes);
    }
}

```

Der Subscriber reagiert auf das "RedirectLoginRoutesEvent". Dieses wird ausgelöst, wenn eine Shop-Seite besucht wird und die App prüft, ob es sich um die Login Seite handelt und somit die Weiterleitungs-Parameter gesetzt werden müssen. Im Beispiel werden dann zuerst die bisher gesetzten Login Routen (standardmäßig nur "frontend.account.login.page") in einer Array-Variable gespeichert, dann wird der Routen-Name der eigenen Seite ergänzt und das fertige Array wird dann an das Event übergeben. Somit wird auch Ihre eigene Login Seite als solche erkannt und somit werden die Weiterleitungs-Parameter gesetzt.

## 5.2 Subscriber registrieren

Jetzt müssen Sie Ihren Subscriber nur noch im Service Container registrieren. Fügen Sie dafür folgenden Eintrag in Ihre `services.xml` ein:

```xml
<service id="MyPlugin\Subscriber\RedirectLoginRoutesSubscriber">
    <tag name="kernel.event_subscriber"/>
</service>
```

**Hinweis:** Sollten Sie sich nicht mit der Shopware Plugin Entwicklung auskennen und Hilfe bei der Aktivierung der Weiterleitung für eigene Login Seiten benötigen, können Sie mich gerne unter <moritz@momocode.de> kontaktieren.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.momocode.de/shopware-6/login-redirect/5.-eigene-login-seite.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
