我在Magento之外创建了一个SOAP服务器(我们称之为www.example.com/soap/)。目录/soap
如下所示:
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>
答案 0 :(得分:5)
有条件的是,但不是你想的方式。 Magento配置中的<routers/>
标签设置了一种非常特定的路由选择。用简单的英语,你可以说
“以此<frontName/>
开头的网址应由此模块处理”
除此之外,没有其他方法可以通过配置单独设置自定义路由。
您可以做的是配置自定义路由器对象,然后编写PHP代码以实现您想要的路由逻辑。这个问题超出了简单的Stack Overflow答案,但您可以在this series of articles中获取完整的故事,或者在the simple page模块中查看自定义路由的示例(自我链接)。