Я попробовал это, но имя пользователя не отображается.
Может ли кто-нибудь посмотреть, почему это сейчас не работает? ![]()
Я хочу это использовать. ![]()
Я попробовал это, но имя пользователя не отображается.
Может ли кто-нибудь посмотреть, почему это сейчас не работает? ![]()
Я хочу это использовать. ![]()
Привет @kynic ![]()
У вас это работает?
Если доступно имя, отображается имя; если доступно только имя пользователя, отображается оно.
Просто чтобы сохранить текущий пример выше ![]()
Заголовок
<script type="text/discourse-plugin" version="0.8">
api.onPageChange(() => {
if (api.getCurrentUser()) {
const loggedInUser = document.getElementById("logged-in-user");
if (api.getCurrentUser().name) {
loggedInUser.innerText = "Привет " + api.getCurrentUser().name + "!";
} else {
loggedInUser.innerText = "Привет " + api.getCurrentUser().username + "!";
}
}
});
</script>
После заголовка
<h2 class="x-title"><span id="logged-in-user"></span> Добро пожаловать в ваше новое сообщество</h2>
Надеюсь, это поможет. ![]()
Привет,
Я тестировал это на локальном хосте, и когда я добавил своё полное имя в профиль пользователя, оно начало отображаться. Но должно ли это работать и без добавления полного имени?
В любом случае, на продакшн-сайте всё работает отлично.
Хочу показывать «С возвращением, [имя пользователя]» для авторизованных пользователей и «Добро пожаловать» для неавторизованных.
Кто-нибудь может помочь?
Измените JavaScript так, чтобы возвращалось «Welcome», если текущего авторизованного пользователя нет:
<script type="text/discourse-plugin" version="0.8">
api.onPageChange(() => {
const loggedInUser = document.getElementById("logged-in-user");
if (api.getCurrentUser()) {
if (api.getCurrentUser().name) {
loggedInUser.innerText = "Привет " + api.getCurrentUser().name + "!";
} else {
loggedInUser.innerText = "Привет " + api.getCurrentUser().username + "!";
}
} else {
loggedInUser.innerText = "Welcome"
}
});
</script>