Custom, dynamic SEO Url für Plugin

Ich habe ein Frontend-Controller welcher über …/MyController erreichbar ist. Soweit, so gut. Nun möchte ich aber dass Aufrufe an /MyControlller/{ID}/… auch an die IndexAction meines Controllers gehen, und ich dort {ID} $this->Request->setPrams(‚myid‘, {ID}) setzen kann, damit mein custom Listing die Produkte sauber filtern kann.

Habs versucht mir irgendwie über das RouterRewrite plugin abzuleiten, aber klappt garnicht :/ Optimal wäre sogar, dass ich MyController durch ein anderes Wort ersetzen kann (z.B. in abhängigkeit der Landessprache, oder nach Konfiguration)

Ich habe es nun folgendermaßen gelöst (denke aber nicht elegant)

    public static function getSubscribedEvents()
    {
        return [
            'Enlight_Controller_Front_RouteShutdown'
            => 'onFrontendRouteShutdown'
            // ...
        ];
    }

    public function onFrontendRouteShutdown(\Enlight_Event_EventArgs $args) {
        $request = $args->getRequest();
        $front = $args->getSubject();
        $response = $front->Response();

        if (!$request->getModuleName() == 'frontend') {
            return;
        }

        $tagIds = [];
        $path = $request->getPathInfo();
        $steps = explode('/', $path);
        $doDispatch = false;
        foreach($steps as $step) {
            if ($doDispatch) {
                // add to ids
                $tagIds[] = trim(strtolower($step));
            }

            if (strtolower($step) == strtolower($this->routerMagicName)) {
                $doDispatch = true;
            }
        }

        if ($doDispatch && count($tagIds) > 0) {
            array_filter($tagIds); ;
            $request->setControllerName('MyController');
            $request->setActionName('index');
            $request->setParam('tagId', strtoupper($tagIds[0]));
        }

    }

in meinem Controller in der indexAction dann dementsprechen den den param prüfen