Controller Template laden - Wie richtig ?

Moin,

ich hoffe du hast das Problem mittlerweile selbst hinbekommen. Da ich aber auch gerade starte und das selbe Problem habe, poste ich hier einmal den Grund.

 

Die Navigation wird nicht angezeigt, weil diese über die “page” variable gesetzt wird.

Also muss man den GenericPageLoader injecten und den Controller als Service regstrieren.

 

Controller:

genericPageLoader = $genericPageLoader;
    }

    /** @Route("/plugin", name="frontend.plugin.index", options={"seo"="false"}, methods={"GET"}) */
    public function index(Request $request, SalesChannelContext $context) {
        $page = $this->genericPageLoader->load($request, $context);
        return $this->renderStorefront("components/plugin/index.html.twig", [
            'page' => $page
        ]);
    }
}

Plugin

load('controller.xml');
    }
}

DependencyInjection/controller.xml

views/components/plugin/index.html.twig

{% sw_extends '@Storefront/storefront/base.html.twig' %}

{% block base_content %}
	{{ parent() }}
	hello world
{% endblock %}

 

4 „Gefällt mir“