Développement

Quelques notes pour répondre à des problématiques rencontrées au travail.

eZ Publish : redirections au sein d’un module

Le traducteur d’URL (disponible en back office depuis l’onglet Administration) permet de définir des alias. On peut grâce à lui rediriger un module vers un autre, en changeant ou non l’URL. Mais comment faire en PHP, au sein d’un module personnalisé ?

Redirection avec changement d’URL

On souhaite ici faire une redirection complète de /some_module/some_view vers /another_module/another_view.

Dans le module some_module, désigné ci-dessous par $someModule :

return $someModule->redirect('another_module', 'another_view');

Si les modules d’origine et de destination sont identiques, utiliser la fonction redirectToView. Ces deux fonctions reviennent à faire un appel à :

header("Location: /another_module/another_view");

Redirection sans changement d’URL

On souhaite maintenant rediriger /some_module/some_view vers /another_module/another_view sans changer l’URL. On obtiendra donc l’URL /some_module/some_view avec le contenu de /another_module/another_view.

Dans le module some_module, désigné ci-dessous par $someModule :

return $someModule->forward($anotherModule, 'another_view');

$someModule et $anotherModule sont des objets eZModule.

Publié le 13/06/2014
dans la catégorie Développement.

Tags : ezpublish redirection

Commentaires

Poster un commentaire

Votre adresse e-mail ne sera pas affichée sur le site.