web-dev-qa-db-fra.com

Changer le chemin de connexion de redirection pour les invités?

Supposons que l'accès à un menu (ou à un article) est défini sur tilisateurs enregistrés seulement.

Chemin vers la page: http://localhost/menu

quand ceci URL est directement accessible par n'importe quel TILISATEUR INVITÉ, il est redirigé vers:

http://localhost/...?view=login qui lui demande de se connecter en premier.

Comment changer le chemin d'accès à la page de redirection. J'ai créé une page de connexion personnalisée. Je souhaite qu'elle soit redirigée vers ma page de connexion personnalisée et non vers http://localhost/...?view=login. Quel fichier doit être édité pour y parvenir?

3
saibbyweb

Je l'ai compris moi-même! :)

Vous devez éditer ce fichier: /templates/your_template/html/com_users/login/default.php ou si votre dossier de modèle ne comprend pas de dossier html, modifiez celui-ci: /components/com_users/views/login/tmpl/default.php

et changer

if ($this->user->get('guest')):
echo $this->loadTemplate('login');

à

if ($this->user->get('guest')):
header("Location: URL_WHERE_YOU_WANT_TO_REDIRECT");
6
saibbyweb

Si vous souhaitez donner un aspect différent à votre page de connexion, vous pouvez effectuer un remplacement de modèle sans avoir à rediriger vers une autre page. Recherchez votre dossier de modèles et sélectionnez le modèle que vous utilisez. Créez un dossier HTML si vous n'en avez pas. Le composant que vous souhaitez remplacer est com_users.

Si vous regardez /components/com_users/views, vous pouvez voir toutes les vues pouvant être remplacées dans le dossier des modèles. Celui dont nous avons besoin maintenant se trouve dans le dossier de connexion. /components/com_users/views/login/tmpl _ - il y a default.phpdefault_login.php et default_logout.php.

Vous avez déjà créé un dossier html dans votre modèle, vous devez maintenant copier ces fichiers à l'emplacement suivant:

/templates/yourtemplate/html/com_users/login

Cela se traduira par 3 fichiers:

/templates/yourtemplate/html/com_users/login/default.php
/templates/yourtemplate/html/com_users/login/default_login.php
/templates/yourtemplate/html/com_users/login/default_logout.php

Vous n'avez pas besoin du dossier tmpl.

Vous pouvez éditer le default_login.php pour effectuer le remplacement.

4
Eva Farkasne

Vous devez créer un plugin, qui vérifiera l'URL et le groupe d'utilisateurs. Si votre utilisateur est invité, vous pouvez le rediriger vers l'URL souhaitée.

Le lien ci-dessous peut vous aider.

1
Gaurav

Si vous souhaitez modifier l'emplacement de redirection de l'utilisateur après la connexion et la déconnexion, vous pouvez le faire dans le module de connexion de joomla. Il y a 2 dossiers pour cela.

0
Eva Farkasne