Убрать пиктограмму личного кабинета, добавить свои кнопки «Изменить профиль» и «Выйти»

Многим не нравится стандартная плашка для действий с личным кабинетом, поэтому её скрывают. Однако это чревато тем, что пользователь не сможет выйти из кабинета или изменить профиль.

Вы можете создать собственные кнопки «Войти» и «Зарегистрироваться», используя стандартные ссылки (или ссылку на регистрацию в определённую группу). А для кнопок «Изменить профиль» и «Выход» потребуется использовать код.

Выберите, какие функции вам нужны:
Затем создайте на странице маркированный список, где каждая строчка будет в виде текстовой ссылки:
для кнопки «Изменить профиль» ссылка #profile:edit
для кнопки «Логин» ссылка #login;
для кнопки «Регистрация» ссылка #signup;
для кнопки «Выход» ссылка #logout.
И скопируйте код:
<!-- Убрать пиктограмму личного кабинета, добавить свои кнопки «Сменить пароль» и «Выйти» | https://necodim.ru/tilda/lk-buttons -->
<script>
$(document).ready(function() {
    let projectId = parseInt(document.querySelector('#allrecords').dataset.tildaProjectId),
        lsUser = window.localStorage.getItem('tilda_members_profile' + projectId),
        userEmail = lsUser != null ? JSON.parse(lsUser).login : false;
    $('a[href="#profile:edit"]').on('click', function(e) {
        e.preventDefault();
        $('.tlk-userbar__popup-edit-profile').click();
    });
    $('[href="#logout"]').click(function(e) {
        e.preventDefault();
        let projectId = parseInt(document.querySelector('#allrecords').dataset.tildaProjectId);
        window.localStorage.removeItem('tilda_members_profile' + projectId);
        window.localStorage.removeItem('tilda_members_profile' + projectId + '_timestamp');
        window.location.replace('/');
    });
    if (userEmail) {
        $('a[href="#login"]')[0].parentNode.remove();
        $('a[href="#signup"]')[0].parentNode.remove();
    } else {
        $('a[href="#login"]').attr('href', '/members/login');
        $('a[href="#signup"]').attr('href', '/members/signup/');
        $('a[href="#logout"]')[0].parentNode.remove();
        $('a[href="#profile:edit"]')[0].parentNode.remove();
    }
});
</script>

<style>
.tlk-userbar, .tlk__userbar {
    display: none !important;
}
</style>
Для регистрации пользователя в конкретную группу, необходимо заменить ссылку «/members/signup/» на свою.

P. S. Метод тестировался на блоке ME403 (скрытое меню с гамбургером) в разделе «Дополнительно» → «Описание». Если возникнут дополнительные вопросы, вы всегда можете задать их в Telegram-чате.
Made on
Tilda