根据参数 url 更改主题

Change theme based on param url

我想知道我是否可以根据 url 参数更改主题(或者是否为时已晚),以及是否可以观察哪个事件是正确的
我只找到了一个正在谈论观察 controller_action_predispatch 的人,但是对于这个事件我仍然无法访问参数 url (基于这个答案 )

是的,您可以通过多种不同的方式做到这一点。该答案并不是说 URL 参数在 controller_action_predispatch 事件中不可访问,但是您可能希望在 controller_action_layout_load_before 而不是 and create custom layout handles from your param value 等事件期间执行此操作。你可以像这样在你的观察者中得到它们:

public function getExampleParam(Varien_Event_Observer $observer)
{
    $request = $observer->getControllerAction()->getRequest();
    $param = $request->getParam('example');
    return $this;
}