联系官方销售客服
1835022288
028-61286886
创建有news video 两种内容模块,都是用的共享目录。
/index.php?c=category&id=1 、 /index.php?c=category&id=4 这是2个分类的链接,我想定义两个不同的栏目封面页。
因此修改 /App/news/Controllers/Categorys.php ,但是发现修改这个控制器根本没反应。
只有强制加上 /index.php?c=category&id=4&s=video 一个s=video才能进到这里。
那么问题来了,生成的栏目菜单中默认不带 s=video 的。我该如何 修改这个 不同模块的Category控制器呢,以便加入不同的处理。
自己来回答了:
如果是独立模块:/dayrui/App/News/Controllers/Category.php,/dayrui/App/News/Controllers/Show.php 可以修改,生效。
如果是共享模块:/dayrui/Fcms/Controllers/Category.php,/dayrui/Fcms/Controllers/Show.php 这两个文件头部写了是不能修改的,需要用共享模块的 /config/hooks.php 钩子来改,可以不破坏核心程序。
参考文档:《共享模块内容加载之前module_show_share》https://www.xunruicms.com/doc/1188.html 这个钩子是加载之前,之前,就是还不知道他是news还是shop了,你应该是要找加载之后的钩子才对
参考文档:《模块内容页面加载前module_show》https://www.xunruicms.com/doc/1376.html 可以用这个,这个是内容加载之后,页面加载之前运行,这个钩子里面就可以知道他是news还是shop