我有
http://example.com/index.php作为我的主页.
我的分类页面网址是 http://example.com/index.php?id_category=10&controller=category
我的分类页面网址是 http://example.com/index.php?id_category=10&controller=category
现在,我需要将我的主页重定向到Category Page.
我尝试了首选项> SEO&网址>设置商店网址>基本URI
as index.PHP?id_category = 10& controller = category
现在,该页面正在重定向到我的类别URL,但页面未打开.
网址显示如下
http://example.com/index.php?id_category=10&controller=category/index.php?
你这样做是错误的.做到如下:
A)简单但不推荐方式:
1)打开Controllers / IndexController.PHP
public function initContent() { parent::initContent(); Tools::redirect('index.PHP?id_category=10&controller=category'); $this->context->smarty->assign('HOOK_HOME',Hook::exec('displayHome')); $this->setTemplate(_PS_THEME_DIR_.'index.tpl'); }
B)推荐方式:
1)复制Controllers / IndexController.PHP以覆盖/ Controllers /文件夹
2)打开复制的文件并进行如下编辑:
class IndexController extends IndexControllerCore { public function initContent() { Tools::redirect('index.PHP?id_category=10&controller=category'); } }
3)保存文件并转到缓存文件夹.找到class_index.PHP,如果它在那里然后删除它.然后检查网站是否正常工作.
备注:
1)上面的代码是给你的想法,它可能会或可能不会工作.请根据您的需要进行调整.
2)在最新版本的Prestashop中,所有类都在class_index.PHP文件中编制索引.因此,如果您对控制器或类进行了任何覆盖,则在删除该文件之前可能无效.当向服务器发出新请求时,PS会自动为您重新生成该文件.
希望这会有所帮助.