Wo findet die Analyse von Magento 2-URL-Segmenten statt?


7

Beim Magento 2-Routing analysiert das System die URL-Segmente in drei Abschnitte

module-or-front/segment2/segment3

In welcher spezifischen Klassendatei passiert das?

Anders ausgedrückt, das Anforderungsobjekt verfügt über eine getModuleNameMethode, die so aussieht

public function getModuleName()
{
    return $this->module;
}

Woher bezieht Magento 2 die Zeichenfolge, die letztendlich die moduleEigenschaft festlegt ?


1
@AmitBera Sie sind sich nicht sicher, ob Sie die Frage verstanden haben - wie würde eine Schnittstelle etwas bewirken?
Alan Storm

Entschuldigung ... @alam Storm .... missverstanden Ihre Frage
Amit Bera

Antworten:


7

Ich denke, alles ist in Magento\Framework\App\Router\Base::matchAction
der Zeile eingerichtet, nach der Sie suchen, $request->setModuleName($moduleFrontName);aber ich denke, Sie wollten die vollständige Methode.
Diese matchActionMethode wird von der matchMethode aus derselben Klasse aufgerufen, die von Magento\Framework\App\FrontController::dispatch().... usw. aufgerufen wird .

[EDIT]
nicht 100% sicher, aber ich denke, die tatsächliche Aufteilung der URL erfolgt inZend\Uri\Uri::makeRelative()

$pathParts = preg_split('|(/)|', $this->getPath(), null, PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY);

Ich suche nach der Stelle, an der die Schnur $moduleFrontName[wahrscheinlich $_GET] gezogen wird.
Alan Storm
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.