web-dev-qa-db-fra.com

Supprimer la balise <li> de "Mot de passe oublié", "Enregistrement"

J'ai un petit problème sur l'un de mes sites Web Joomla. Je devais supprimer le Forgot Password... les 2/3 liens qui apparaissent sous le module de connexion. Ils sont partis maintenant, mais il reste encore 3 <li> section, donc 3 petits points que je ne peux pas supprimer. Comment puis-je changer ça?

L'insecte :
enter image description here

Merci

2
Nicolas Charvoz

Plutôt que de supprimer cette fonctionnalité, la meilleure chose à faire serait de la désactiver.

Pour ce faire, dans votre backend, allez à:

http://YOURSITE.com/index.php?option=com_config&view=component&component=com_users

Dans la première option qui apparaît, définissez "Autoriser l'enregistrement de l'utilisateur" sur Non.

Ceci fait, vous devez créer une substitution dans votre modèle Joomla. Accédez simplement au backend de votre site (via FTP) et naviguez jusqu'à:

modules/mod_login/tmpl/default.php et copiez (veillez à ne pas le déplacer) ce fichier dans:

/templates/YOURTEMPLATE/html/mod_login/default.php (si mod_login n'est pas un dossier, créez-le).

Une fois le fichier dedans, ouvrez-le dans votre éditeur favori et supprimez les éléments suivants:

<ul>
    <li>
        <a href="<?php echo JRoute::_('index.php?option=com_users&view=reset'); ?>">
        <?php echo JText::_('MOD_LOGIN_FORGOT_YOUR_PASSWORD'); ?></a>
    </li>
    <li>
        <a href="<?php echo JRoute::_('index.php?option=com_users&view=remind'); ?>">
        <?php echo JText::_('MOD_LOGIN_FORGOT_YOUR_USERNAME'); ?></a>
    </li>
    <?php
    $usersConfig = JComponentHelper::getParams('com_users');
    if ($usersConfig->get('allowUserRegistration')) : ?>
    <li>
        <a href="<?php echo JRoute::_('index.php?option=com_users&view=registration'); ?>">
            <?php echo JText::_('MOD_LOGIN_REGISTER'); ?></a>
    </li>
    <?php endif; ?>
</ul>

Ce qui précède est approximativement les lignes 60 -> 77

Cela devrait alors tourner!

Mise à jour

Si vous souhaitez remplacer le composant de connexion de l'utilisateur, vous devez copier le fichier à partir de

/components/com_users/views/login/tmpl/default_login.php

à

/templates/YOURTEMPLATE/html/com_users/login/default_login.php

et supprimez cette partie du fichier copié:

<div>
    <ul>
        <li>
            <a href="<?php echo JRoute::_('index.php?option=com_users&view=reset'); ?>">
            <?php echo JText::_('COM_USERS_LOGIN_RESET'); ?></a>
        </li>
        <li>
            <a href="<?php echo JRoute::_('index.php?option=com_users&view=remind'); ?>">
            <?php echo JText::_('COM_USERS_LOGIN_REMIND'); ?></a>
        </li>
        <?php
        $usersConfig = JComponentHelper::getParams('com_users');
        if ($usersConfig->get('allowUserRegistration')) : ?>
        <li>
            <a href="<?php echo JRoute::_('index.php?option=com_users&view=registration'); ?>">
                <?php echo JText::_('COM_USERS_LOGIN_REGISTER'); ?></a>
        </li>
        <?php endif; ?>
    </ul>
</div>

À propos de la ligne 57 ~ 76.

6
RustyJoomla

Tout d’abord, ne changez aucun des fichiers de base de Joomla, vos modifications seront perdues lors de la mise à jour de Joomla.

Pour supprimer l'option User Registration, Allez à Utilisateurs -> Gestionnaire d'utilisateurs dans votre zone d'administration Joomla et cliquez sur Options dans le coin supérieur droit. Puis définissez Allow User registration Sur Non . Cela désactivera complètement l'option d'enregistrement de l'utilisateur. (Vous pouvez toujours créer de nouveaux utilisateurs à partir du backend Joomla).

Joomla User Manager

En ce qui concerne la suppression de Forgot your username Et de Forgot your password, Je voudrais simplement utiliser CSS pour le masquer.

Dans le fichier custom.css De votre modèle (ou similaire), ajoutez le code suivant pour masquer les liens en question:

.login + div {
   display: none;
}

Remarque:
Le composant de connexion semble rendre ces liens dans les balises <div> Et <li> sans toute classe ou ID, rendant ainsi impossible leur ciblage. directement en utilisant CSS. Le code ci-dessus ciblera toute balise <div> Qui apparaît immédiatement après le bloc <div class="login ">, Masquant ainsi les liens.

N'oubliez pas que même si les liens sont masqués, vous pouvez accéder aux fonctions en utilisant une URL directe.

Mot de passe oublié?
http://example.com/index.php?option=com_users&view=reset

Nom d'utilisateur oublié?
http://example.com/index.php?option=com_users&view=remind

2
johanpw