我想从社区覆盖AW Blog BlogController到我的local_MyCompany文件夹来修改saveAction方法。有人可以帮帮我吗。
以下是社区控制器类的路径:
app\code\community\AW\Blog\controllers\Manage\BlogController.php
这是我的local_Business路径:
require_once 'AW/Blog/controllers/Manage/BlogController.php';
class MyCompany_MyAwBlog_Manage_BlogController extends AW_Blog_Manage_BlogController
{
public function editAction()
{
echo 'hello'; die();
}
}
这是我的config.xml文件内容:
<config>
<modules>
<MyCompany_MyAwBlog>
<version>0.1.0</version>
</MyCompany_MyAwBlog>
</modules>
<frontend>
<routers>
<myawblog>
<use>standard</use>
<args>
<module>MyCompany_MyAwBlog</module>
<frontName>myawblog</frontName>
</args>
</myawblog>
</routers>
</frontend>
<global>
<rewrite>
<mycompany_myawblog_blog_manage_blogcontroller>
<from><![CDATA[#^/blog/manage_blog/#]]></from>
<to>/myawblog/blog_manage_blog/</to>
</mycompany_myawblog_blog_manage_blogcontroller>
</rewrite>
</global>
<admin>
<routers>
<myawblog>
<use>admin</use>
<args>
<module>MyCompany_MyAwBlog</module>
<frontName>admin_myawblog</frontName>
</args>
</myawblog>
</routers>
</admin>
答案 0 :(得分:1)
试试这个
1)控制器文件
@emSize : 16px;
@pxr : 1 / unit(@emSize, rem);
.paddingver(@paddingver) {
padding-top: @paddingver * @pxr;
padding-bottom: @paddingver * @pxr;
}
.paddinghor(@paddinghor) {
padding-left: @paddinghor * @pxr;
padding-right: @paddinghor * @pxr;
}
.test {
.paddingver(10px);
.paddinghor(25px);
}
2)Config.xml
require_once 'AW/Blog/controllers/Manage/BlogController.php';
class MyCompany_MyAwBlog_Manage_BlogController extends AW_Blog_Manage_BlogController
{
public function editAction()
{
echo 'hello'; die();
}
}
管理员控制器的更新:
尝试以下操作 -
1)控制器文件
<frontend>
<routers>
<myawblog>
<use>standard</use>
<args>
<modules>
<MyCompany_MyAwBlog before="AW_Blog">MyCompany_MyAwBlog</MyCompany_MyAwBlog>
</modules>
</args>
</myawblog>
</routers>
</frontend>
2)config.xml
<?php
require_once 'AW/Blog/controllers/Manage/BlogController.php';
class MyCompany_MyAwBlog_Manage_BlogController extends AW_Blog_Manage_BlogController
{
public function editAction()
{
echo 'Hi';
die();
}
}
注意:
1)<admin>
<routers>
<adminhtml>
<args>
<modules>
<myawblog before="AW_Blog">MyCompany_MyAwBlog_Adminhtml</myawblog>
</modules>
</args>
</adminhtml>
</routers>
</admin>
上面提到的控制器路径应该是正确的管理控制器路径。对于extends关键字之后的路径的第二个点相同。
2)require_once 'AW/Blog/controllers/Manage/BlogController.php';
答案 1 :(得分:0)
Muk提供的初始答案对我不起作用(前端控制器覆盖)。
但是,在从to更换节点后,它可以正常工作。
因为是重写的路线。但这里的目标是捕捉基本路线,意味着。
所以对我有用的最终config.xml anwser是:
<frontend>
<routers>
<awblog>
<use>standard</use>
<args>
<modules>
<MyCompany_MyAwBlog before="AW_Blog">MyCompany_MyAwBlog</MyCompany_MyAwBlog>
</modules>
</args>
</awblog>
</routers>