Перенаправить категорию на статическую страницу - PullRequest
0 голосов
/ 17 октября 2011

Можно ли перенаправить какую-то конкретную категорию на статическую страницу?

До сих пор я пытался сделать это с помощью пользовательского перенаправления, но он жалуется на неуникальный путь запроса. Целевой путь отключен при редактировании категории переписать тоже

Ответы [ 2 ]

2 голосов
/ 17 октября 2011

Да, это возможно, но не без написания специального кода и добавления наблюдателя.

Не вдаваясь в подробности, вы можете:

public function observe($observer) {
   $request = $observer['controller_action']->getRequest();
   $requestUrl = $request->getRequestUri();

   if($requestUrl == 'mycategoryname'){
       $destinationUrl = 'http://www.mysite.com/static_page';
       $response = Mage::app()->getResponse();
       $response->setRedirect($destinationUrl, 301);
       $response->sendResponse();
       exit;
   }
 }

И в файле config.xml вы собираетесьнужно

<frontend>
  <events>
    <controller_action_predispatch>
       <observers>
         <mycompany_mymodule_model_myclass>
          <type>singleton</type>
          <class>mycompany_mymodule_model_myclass</class>
          <method>observe</method>
         </mycompany_mymodule_model_myclass>
       </observers>
     </controller_action_predispatch>
   </events>
 </frontend>
0 голосов
/ 12 июня 2012

только что с этим сталкивался. По сути, я делаю то же самое и просто подумал, что, возможно, это можно сделать относительно легко с помощью модуля, который добавляет атрибут категории вместе с некоторым дополнительным и / или пользовательским кодом для навигационной панели.

Я думаю, что новым атрибутом категории может быть URL для перезаписи, а затем проверка в шаблоне navigation / top.phtml, чтобы проверить, заполнен ли этот атрибут, и затем переписать на этот URL, если так.

Я опубликую здесь позже, если я заставлю это работать как нужно.

...