В настоящее время я создаю настроенную страницу на основе Bootstrap, поэтому я не могу пройти через CMS.
Я создал файл Mypage.php
что я положил в корень Prestahop, содержащий этот код:
<?php
require(dirname(__FILE__).'/config/config.inc.php');
ControllerFactory::getController('MypageController')->run();
?>
Затем я создал контроллер 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');
}
}
И наконец я положил Mypage.tpl
файл в каталоге моей темы с моим HTML-кодом.
Я естественно стёр cache/class_index.php
но я все еще получаю ошибку 404. Есть идеи?
MypageController.php
в root/controllers/front
, public $php_self = 'mypage';
,BO > Preferences > SEO & URLs
и добавьте новую страницу, выберите mypage
для поля страницы.Там нет необходимости для Mypage.php
в вашем корне вы можете получить доступ к вашему контроллеру по ссылке yoururl/index.php?controller=mypage
, Но если вы хотите использовать это, напишите Controller::getController('MypageController')->run();
,
Не уверен, что ваш код, потому что я не проверял его, но вы должны пойти в SEO & URL-адреса создают новую страницу и выбирают новую страницу Mypage, заголовок страницы, метатег дружественных URL-адресов и ключевые слова.
Вы можете создать новый модуль для вашей пользовательской страницы.
http://doc.prestashop.com/display/PS16/Creating+a+first+module