Jump to content

AU SECOURS - Crée une nouvelle page: MI


Recommended Posts

Je souhaite crée des nouvelles pages "indépendantes" des pages déja existantes.

 

genre avoir une page a customiser (en double langue) lesoiseaux.php... et bien j'ai beau crée les tpl le controlleur plus la page en racine du site.... pas moyen d'avoir un affichage de quoi que ce soit!!!

 

C'est pourtant un étape qui devrait être "facile"

 

 

Merci pour vos commentaires, voire lumières ... car la, la difficulté est inattendue et commence légèrement a me courir :)

Link to comment
Share on other sites

Hi!

 

Merci pour vos réponses @alex: oui c'est une solution mais j'ai besoin d'y mettre des tpl différents @DevOnWeb: facile facile... c'est ce que j'avais fait au départ mais ça marche pas bien ... d'ou mon appel AU SECOURS :)

 

Voila le truc

 

j'ai créé a la base du site xtest.php

 

 

require(dirname(__FILE__).'/config/config.inc.php');
Tools::displayFileAsDeprecated();

Tools::redirect('index.php?controller=xtest'.($_REQUEST ? '&'.http_build_query($_REQUEST, '', '&') : ''), __PS_BASE_URI__, null, 'HTTP/1.1 301 Moved Permanently');

 

 

Puis un controleur / front XtestController.php

 

class IndexControllerCore extends FrontController
{
public $php_self = 'xtest';

public function initContent()
{
parent::initContent();

$this->context->smarty->assign('HOOK_HOME', Hook::exec('displayHome'));
$this->setTemplate(_PS_THEME_DIR_.'xtest.tpl');
}
}

 

 

un xtest.tpl dans themes\default naturellement

 

Puis BO seo/url je choisi la page et reecriture xtest

 

index.php?controller=xtest => blanc

 

 

D'ou ma question : ou cela merde t il? :)

Link to comment
Share on other sites

Salut j'ai peut etre la réponse à ta question. J'ai fait comme ca :

 

Je crée une page Mapagecontroller.php

 

<?php

 

class MapageControllerCore extends FrontController

{

public $php_self = 'Mapage.php';

public $ssl = true;

 

public function preProcess()

{

parent::preProcess();

 

}

 

public function setMedia()

{

parent::setMedia();

Tools::addCSS(_THEME_CSS_DIR_.'Mapagecss.css');

}

 

public function displayContent()

{

$_POST = array_merge($_POST, $_GET);

parent::displayContent();

self::$smarty->display(_PS_THEME_DIR_.'Mapage.tpl');

}

}

 

Garde bien la 1ere lettre en majuscule et le reste de la casse pareil.

 

Ensuite tu crée ta page Mapage.php

 

 

<?php

 

 

require(dirname(__FILE__).'/config/config.inc.php');

ControllerFactory::getController('MapageController')->run();

 

 

Puis tu crée Mapage.tpl (que tu met dans ton thème)

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

 

<link href="css/Mapagecss.css" rel="stylesheet" type="text/css" />

{capture name=path}{l s='Le titre que tu veux voir dans le fil d'ariane'}{/capture}

{include file="$tpl_dir./breadcrumb.tpl"}

<h1>Le titre de ta page!</h1>

</head>

 

<body>

 

</body>

 

</html>

 

Ensuite, tu remontes tes 3 pages via ftp. Puis tu vas dans preferences-Seo, tu fais nouveau, tu prends Mapage.php et tu lui attribues la description, le titre, mots clés et url rewriting.

 

Et voilà :)))

Courage

  • Like 1
Link to comment
Share on other sites

  • 2 months later...

Bizarre car cette technique marchait chez moi avec la version 1.4 mais ne marche plus avec la version 1.5

 

en effet la ligne

ControllerFactory::getController('ProductController')->createProductCover();

 

renvoit une erreur 500

Le site Web a rencontré une erreur lors de l'extraction de http://localhost/prestashop1.5/modules/covercustom/app/cover-create.php?0.3397159609012306.

 

Vous confirmez que ControllerFactory::getController marche bien avec prestashop 1.5 ?

Edited by ademus (see edit history)
Link to comment
Share on other sites

Bonjour

 

 

AU SECOURS - Crée une nouvelle page: MI

 

Nous avons tous besoin de secours quand nous posons des questions sur le forum, mais là vous n'êtes pas en train de vous noyer et les Au secours c'est pas une bonne méthode sur un forum pour avoir des réponses.

 

Sinon les forums deviendraient vite des torchons si tous mettent Au secours help A l'aide etc..

en plus vous criez les majuscule = crier depuis que la communication électonique existe !!

Link to comment
Share on other sites

Je me permets un up car j'ai bien suivi le tuto mais je ne vois pas le nom de ma page dans la liste déroulante "Page" de Préférences -> SEO&URLs -> créer.

 

Je suis sous prestashop 1.5, est-ce qu'il y a quelque chose à changer ?

 

Merci.

 

 

EDIT : oO truc tout bête... j'avais fait une copie d'un fichier modifié donc forcément il essayait de trouver la copie dans Meta.php qui n'existait pas donc erreur php... :D

Edited by guigs06.pro (see edit history)
Link to comment
Share on other sites

salut

 

Se qui marche sur la 1.4 ne marche plus sur la 1.5.4 j ai aussi galérer pour créer une page je te dit comment j ai fait et tu pourra rajouter ta page par la suite

 

Ma page créer s'appelle catalogue donc faudra remplacer

 

1/ dans dossier controllers / front j ai mis

 

<?php
/*
* 2007-2012 PrestaShop
*
* NOTICE OF LICENSE
*
* This source file is subject to the Open Software License (OSL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/osl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to [email protected] so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
*  @author PrestaShop SA <[email protected]>
*  @copyright  2007-2012 PrestaShop SA
*  @license	http://opensource.org/licenses/osl-3.0.php  Open Software License (OSL 3.0)
*  International Registered Trademark & Property of PrestaShop SA
*/
class CatalogueControllerCore extends FrontController
{

	public $php_self = 'catalogue';

 public function initContent()
 {

  parent::initContent();
  $this->setTemplate(_PS_THEME_DIR_.'catalogue.tpl');
 }
}

 

2/ A la racine avec tous les autres php j'ai créer le fichier catalogue.php

 

<?php
/*
* 2007-2012 PrestaShop
*
* NOTICE OF LICENSE
*
* This source file is subject to the Open Software License (OSL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/osl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to [email protected] so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
*  @author PrestaShop SA <[email protected]>
*  @copyright  2007-2012 PrestaShop SA
*  @license	http://opensource.org/licenses/osl-3.0.php  Open Software License (OSL 3.0)
*  International Registered Trademark & Property of PrestaShop SA
*/

require_once(dirname(__FILE__).'/config/config.inc.php');
Controller::getController('CatalogueController')->run();

 

3/Dans mon dossier thème j ai créer le tpl avec

 

{*
* 2007-2012 PrestaShop
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License (AFL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/afl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to [email protected] so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
*  @author PrestaShop SA <[email protected]>
*  @copyright  2007-2012 PrestaShop SA
*  @version  Release: $Revision: 6844 $
*  @license	http://opensource.org/licenses/afl-3.0.php  Academic Free License (AFL 3.0)
*  International Registered Trademark & Property of PrestaShop SA
*}

LA le code de ma page

Edited by Glaber (see edit history)
Link to comment
Share on other sites

Bonjour à tous,

 

Merci Glaber, je viens de tester ta solution sous Prestashop 1.5.3. Tout fonctionne très bien jusqu'au moment où j'ajoute la page dans SEO & URL's et là ma page est redirigée vers l'erreur 404-Page introuvable ...

 

Qu'es que j'ai mal fait ou pas fait ?

 

Merci.

Edited by max63800 (see edit history)
Link to comment
Share on other sites

Bonjour,

 

@Glaber : Merci, entre temps j'avais trouvé et ça marche mais difficile de comprendre le modèle prestashop au niveau technique.

Est-ce qu'il y a une doc quelque part niveau code ? Car j'ai fait une page entre l'ajout au panier et le panier mais du coup je perds tous mes éléments en route :/

 

@max63800 : est-ce que tu as bien activé l'url simplifiée ? Et mis ta page .php à la racine ?

Sinon tu peux essayer de remplacer, dans ta page .php située à la racine :

 

Controller::getController('MaPageController')->run();

 

par

 

Tools::displayFileAsDeprecated();

 

Tools::redirect('index.php?controller=maPage'.($_REQUEST ? '&'.http_build_query($_REQUEST, '', '&') : ''), __PS_BASE_URI__, null, 'HTTP/1.1 301 Moved Permanently');

Edited by guigs06.pro (see edit history)
Link to comment
Share on other sites

  • 9 months later...

J'ai un problème similaire, j'ai crée mes 3 fichiers je les ai remontés via le ftp, seulement quand je vais dans préférences==> SEO&URLs et que je crée une nouvelle page, mapage.php ne se trouve pas dans le menu déroulant. Donc forcément quand je tente d'accéder à ma page ça me renvoit une page blanche. Pouvez-vous m'aider?

Edited by Flobrand (see edit history)
Link to comment
Share on other sites

  • 1 month later...
  • 2 weeks later...
  • 2 years later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...