2012-02-03 72 views
1

我在Magento之外創建了一個SOAP服務器(我們稱它爲www.example.com/soap/)。目錄/soap看起來是這樣的:Magento模塊將舊網址路由到控制器/動作

example.wsdl 
example_server.php 

有跡象表明,我忽略了,因爲用戶不會看到這些輔助類。我想要做的就是將這些代碼移到Magento模塊中,並使用路由器來避免強迫用戶更改他們的URL。這可能嗎?例如,當用戶請求www.example.com/soap/example.wsdl時,我想將其路由至My_Newsoap_IndexController::wsdlAction()

這是我在config.xml中已經得到了現在:

<frontend> 
    <routers> 
    <newsoap> 
     <use>standard</use> 
     <args> 
     <module>My_Newsoap</module> 
     <frontName>soap</frontName> 
     </args> 
    </newsoap> 
    </routers> 
</frontend> 

回答

5

條件不錯,但不是你想的方式。 Magento配置中的<routers/>標籤設置了一種非常特殊的路由。在簡單的英語,你可以說

外,儘管「與此<frontName/>開頭的URL應該通過這個模塊處理」,還有由獨顯的配置設置定製路由沒有進一步的辦法。

你可以做的是配置自定義路由器對象,然後編寫PHP代碼,但是你要實現你的路由邏輯。這個過程不僅僅是一個簡單的堆棧溢出的答案,但你可以在this series of articles得到完整的故事,或者在the simple page模塊(自我鏈接)中看到一個自定義路由的例子。

+0

非常好,謝謝Alan! – gandalf007 2012-02-03 13:13:10