Связь с администратором Magento из внешней панели администратора - PullRequest
5 голосов
/ 21 апреля 2011

Я пытаюсь создать некоторые инструменты CRM, которые отправляют электронные письма моим продавцам и дают ссылки на страницы внутри Magento Admin. Я создавал URL-адреса следующим образом:

Mage::getUrl('*/quotes/edit', array('id'=>$quote->getQuoteId(), '_current'=>true))

Проблема в том, что он отправляет их только на панель инструментов. Я предполагаю, что это потому, что параметр "_current" изменяется при входе в систему, что делает недействительной ссылку и отправляет их на страницу по умолчанию. Любые идеи о том, как я могу сделать ссылку на администратора, которая не включает сессию в URL?

Ответы [ 2 ]

4 голосов
/ 08 мая 2012

Я придумал следующее, которое отключает секретный ключ на основе имени действия:

public function preDispatch()
{ 
     if ($this->getRequest()->getActionName() == 'update') Mage::getSingleton('adminhtml/url')->turnOffSecretKey();
     parent::preDispatch();
}

Протестировано в версии 1.6.2.0.Вставьте это в свой контроллер, не забудьте изменить имя действия «update» на свое или удалить оператор if для всех действий в вашем контроллере.

2 голосов
/ 22 апреля 2011

Отключение секретного ключа в URL-адресах администратора должно решить вашу проблему.

Чтобы отключить секретный ключ в URL-адресах администратора: -

  • Войдите в систему для администрирования
  • Перейти к Система -> Конфигурация -> ДОПОЛНИТЕЛЬНО -> Администратор -> Безопасность -> Добавить секретный ключ к URL
  • Выбрать Нет
  • Сохранить конфигурацию
...