Jump to content

Résolu Redirection


Recommended Posts

Bonjour, j'aimerai un petit coup de pouce je rame un peu ....

 

Enfaite je suis sous prestashop 1.7 sur un serveur dédie et j'aimerais que ma page d'accueil soit redirigée vers une page produit en permanence mes je trouve pas .

 

Avez vous des idée ?

 

Cordialement

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

bonjour,

Tu peux faire un override de /override/controllers/front/IndexController.php

class IndexControllerCore extends FrontController {
	public function initContent()
	{
		Tools::redirect('index.php?id_product=3&controller=product');
	}
}

ici ton produit à l'id 3 ...

cdt

Link to comment
Share on other sites

1 minute ago, Alexandre Carette said:

bonjour,

Tu peux faire un override de /override/controllers/front/IndexController.php

class IndexControllerCore extends FrontController {
	public function initContent()
	{
		Tools::redirect('index.php?id_product=3&controller=product');
	}
}

ici ton produit à l'id 3 ...

cdt

Merci je test ce soir en rentrant 

Link to comment
Share on other sites

S'il n'y a qu'un seul produit, alors il faut accéder aux fichiers via le FTP, ouvrir le dossier "controller" puis "front", puis le fichier "IndexController.php

et là, après "public function initContent()" remplacer

{
        parent::initContent();
        $this->context->smarty->assign(array(
            'HOOK_HOME' => Hook::exec('displayHome'),
        ));
        $this->setTemplate('index');
    }

par

{
        	Tools::redirect('adresse-complete_du_produit');
    }

Cela fonctionne je viens de tester. Par contre, j'ai essayé de faire plutôt un override et là rien ne change. Donc avant de changer, faire une sauvegarde du fichier d'origine.

Link to comment
Share on other sites

  • Gaca changed the title to Résolu Redirection

un petit "Merci pour les réponses" ne ferait pas de mal 😉

 

Alexandre parlait de créer un override :

dans le dossier "override" > "controller' > "front" : créer un fichier IndexController.php s'il n'existe pas.

Y mettre ce code (si le fichier existe, ajouter le code sans <?php :

<?php
class IndexController extends IndexControllerCore 

 {
	public function initContent()
	{
		Tools::redirect('index.php?id_product=3&controller=product');
	}
}

(quoiqu'il ait mis class IndexControllerCore extends FrontController, là je ne sais pas qui a raison)

Il faut remplacer le 3 de id_product par l'id du produit concerné.

Personnellement, j'ai essayé mais cela n'a rien changé, même en testant les 2 class. Donc j'ai modifié directement le fichier dans le dossier que j'ai décrit.

Par contre, j'ai mis l'url du produit que je voulais afficher pour éviter les redirections 301.

Bien sûr, il serait mieux que l'override fonctionne, comme ça ce ne sera pas écrasé lors d'une mise à jour. A tester donc en premier après avoir vidé le cache.

Link to comment
Share on other sites

Bonjour,

 

Effectivement j'ai oublié la politesse ...

Un grand merci a vous d'avoir pris le temps de répondre.

Pour ma part cela fonctionne bien.

Encore désoler pour cette oublie

Cordialement 

Link to comment
Share on other sites

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...