相关疑难解决方法(0)

在Prestashop 1.5.3中创建自定义页面

我想在不使用CMS的情况下在Prestashop 1.5.3中创建自定义页面.

不幸的是我找不到任何与1.5.3一起使用的教程.

到目前为止,我已在stores根目录中创建了一个test.php文件,其中包含以下内容:

<?php
include(dirname(__FILE__).'/config/config.inc.php');
include(dirname(__FILE__).'/header.php');

$smarty->display(_PS_THEME_DIR_.'test.tpl');
?>
Run Code Online (Sandbox Code Playgroud)

我将相应的test.tpl放在我的主题basefolder中.它只包含'你好世界'.

我更改了blockmenu.php并创建了一个指向我页面的自定义链接:

$this->_menu .= '<li><a href="test.php">TEST</a></li>'.PHP_EOL;
Run Code Online (Sandbox Code Playgroud)

如果我点击链接页面显示,但HTML是某种腐败.页面的body-id设置为pagenotfound,左列生成但未显示.有没有办法为我的自定义页面设置$ page_name,以便我可以检查我的自定义页面是否已加载并抑制左右列的生成?

有没有其他方法可以创建没有CMS的功能自定义页面?

prestashop

10
推荐指数
2
解决办法
2万
查看次数

Prestashop 1.6中没有CMS的自定义页面

我目前正在创建一个基于Bootstrap的自定义页面,因此我无法通过CMS.

我创建了一个文件Mypage.php,我放在包含此代码的Prestahop根目录中:

<?php
    require(dirname(__FILE__).'/config/config.inc.php');
    ControllerFactory::getController('MypageController')->run();
?>
Run Code Online (Sandbox Code Playgroud)

然后我MypageController.php在override/controllers/front中创建了一个包含此代码的控制器:

class MypageControllerCore extends FrontController
{
    public $php_self = 'Mypage.php';
    public $ssl = true;

    public function preProcess()
    {
        parent::preProcess();
    }

    public function setMedia()
    {
        parent::setMedia();
        Tools::addCSS(_THEME_CSS_DIR_.'Mypage.css');
    }

    public function displayContent()
    {
        $_POST = array_merge($_POST, $_GET);
        parent::displayContent();
        self::$smarty->display(_PS_THEME_DIR_.'Mypage.tpl');
    }
}
Run Code Online (Sandbox Code Playgroud)

最后我Mypage.tpl用我的HTML代码在我的主题目录中放了一个文件.

我自然删除cache/class_index.php但仍然遇到404错误.有任何想法吗?

php controller prestashop-1.6

4
推荐指数
1
解决办法
9462
查看次数

标签 统计

controller ×1

php ×1

prestashop ×1

prestashop-1.6 ×1