Phân đoạn phân tích URL Magento 2 xảy ra ở đâu


7

Trong định tuyến Magento 2, hệ thống phân tích các phân đoạn URL thành ba phần

module-or-front/segment2/segment3

Tập tin lớp cụ thể nào xảy ra trong này?

Nói cách khác, đối tượng yêu cầu có một getModuleNamephương thức giống như thế này

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

Trường hợp Magento 2 có được chuỗi cuối cùng đặt thuộc moduletính?


1
@AmitBera Không chắc bạn đã hiểu câu hỏi - giao diện sẽ làm gì?
Alan Storm

xin lỗi ... @alam Storm .... hiểu nhầm câu hỏi của bạn
Amit Bera

Câu trả lời:


7

Tôi nghĩ rằng tất cả mọi thứ được thiết lập trong Magento\Framework\App\Router\Base::matchAction
dòng bạn đang tìm kiếm $request->setModuleName($moduleFrontName);nhưng tôi đoán bạn muốn phương pháp đầy đủ.
Đây matchActionphương pháp được gọi bởi matchphương pháp từ lớp tương tự mà được gọi bằng Magento\Framework\App\FrontController::dispatch().... và vân vân.

[EDIT]
không chắc chắn 100%, nhưng tôi nghĩ việc phân tách hành động của url được thực hiện trongZend\Uri\Uri::makeRelative()

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

Tôi đang tìm kiếm vị trí mà chuỗi $moduleFrontNameđược lấy từ [có thể $_GET].
Alan Storm
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.